teddy74
Goto Top

Anwendung Braucht Administrator Rechte

Hallo,

ich habe ein kleines Programm geschrieben. (VS2008, .NET 2.0, C#).

Mit dem Setup Assistent habeich auch ein Setupprogram erstellt.

soweit alles ok. Das Program läuft auch richtig.

Was ich aber nicht verstehe, jedes Mal wenn ich das Programm starten will, kommt Benutzername/passwort-Fenster von Windows7 (ich bin als Standardbenutzer angemeldet)

Das programm braucht eigentlich nichts vom System... und braucht auch keine Sonderrechte.

Installiert wird aber unter c:\Programme \ testProgram\...
Bei der Installation gebe ich schon Administrator passwort ein, damit das Program installiert wird.

Habe ich da beim kompilieren oder beim Setup erstellen ein fehler gemacht?

Kann ich dies irgendwie von meiner Anwendung aus abschalten?


Grüsse,
Teddy74

Content-Key: 168132

Url: https://administrator.de/contentid/168132

Printed on: April 26, 2024 at 03:04 o'clock

Member: Logan000
Logan000 Jun 16, 2011 at 13:02:57 (UTC)
Goto Top
Moin moin

Zitat von @Teddy74:
Was ich aber nicht verstehe, jedes Mal wenn ich das Programm starten will, kommt Benutzername/passwort-Fenster von Windows7 (ich
bin als Standardbenutzer angemeldet)
Das programm braucht eigentlich nichts vom System... und braucht auch keine Sonderrechte.
Wenn das so wäre, käme die UAC nicht hoch.

Installiert wird aber unter c:\Programme \ testProgram\...
Bei der Installation gebe ich schon Administrator passwort ein, damit das Program installiert wird.
Klar.
Habe ich da beim kompilieren oder beim Setup erstellen ein fehler gemacht?
Kann ich dies irgendwie von meiner Anwendung aus abschalten?
Wenn man weis was, dann kann man es wohl auch abschalten.
Schreibt dein Program irgend wo unter c:\Programme... bzw im Windowsordner oder in der Registry unter HKLM?

Was Passiert wenn du in der UAC ein Adminkonto angiebst? Startet die Anwendung oder kommt der windows installer noch mal hoch?

Du könntest beim Programmstart mal AccessEnum mitlaufen lassen um rauszubekommen wo dein Programm rumwusselt wo es nichts zu suchen hat.

Gruß L.
Member: Clijsters
Clijsters Jun 16, 2011 at 13:06:23 (UTC)
Goto Top
Was ich aber nicht verstehe, jedes Mal wenn ich das Programm starten will, kommt Benutzername/passwort-Fenster von Windows7 (ich bin als Standardbenutzer angemeldet)
Tja, dann will er wohl Admin-Rights...
Das programm braucht eigentlich nichts vom System... und braucht auch keine Sonderrechte.
Es will aber Adminrachte. oder irre ich mich?
Installiert wird aber unter c:\Programme \ testProgram\...
Gut, hierzu sage ich nichts...
Bei der Installation gebe ich schon Administrator passwort ein, damit das Program installiert wird.
Ah. sehr schön.
Und wo?
Habe ich da beim kompilieren oder beim Setup erstellen ein fehler gemacht?
Das wüsste ich, wenn ich wüsste, wie du es gemacht hast.

Kann ich dies irgendwie von meiner Anwendung aus abschalten?
Sicher, der Sinn der UAC/Eines Administratorpasswort-Dialogs ist es bestimmt,
  • von dem Programm einfach umgangen zu werden und somit auf die Authorisierung durch den Benutzer zu ###en.
  • Administratorrechte an Programme eines Hauptbenutzers zu vergeben.
----

Gut, und jetzt im Ernst:
Ich bin der Meinung, wenn du uns sagst, von was für einer Anwendung, von was für Aktionen und pipapo wir hier sprechen, können wir dir sagen, wo das Problem ist.
Alternativ kann man die UAC über die Benutzerkonten abschalten.
Wenn das Programm natürlich explizit Administratorrechte benötigt, hat das hiermit nicht mehr viel zutun. Dann benötigt es diese halt.
Das Einzige, was du dann machen könntest, wäre aus dem Programm ein Kartenspiel zu machen. Das benötigt sicher keine Admin-Rights.


Gruß
Dominique
Member: Teddy74
Teddy74 Jun 16, 2011 at 13:27:07 (UTC)
Goto Top
Vielen Dank für die schnelle Reaktion....

@logann000: Nein Program schreibt nichts in HKLM / Windows / Programme...

ich werde jetzt mit dem Tool schauen was passiert....

@Dominique: Ich dachte auch mein Program braucht keine Admin-Rights. Scheint aber nicht so zu sein....


Ich habe in der Datei testProgram.exe.manifest ein Eintrag gefunden :

<security>
<requestedPrivileges>
<requestedExecutionLevel level="requireAdministrator" />
</requestedPrivileges>
</security>


Das scheint das Problem zu sein...

ich werde testen und weiterberivhten wenn ich etwas finde...
Member: Clijsters
Clijsters Jun 16, 2011 at 13:35:13 (UTC)
Goto Top
Hey,

wäre vlt. gut zu wissen, was das Programm so im groben macht.
Vielleicht findet sich hier ja ganz schnell ein Ansatz.
Du könntest beim Programmstart mal AccessEnum mitlaufen lassen um rauszubekommen wo dein Programm rumwusselt wo es nichts zu suchen hat.
Das, oder der ProcessMonitor. Ist auch fein, was sowas angeht. Filterst nach Anwendungsname, Aktion und lässt dir sagen, wo das Prog hinwill...


Gruß
Dominique
Member: Teddy74
Teddy74 Jun 16, 2011 at 13:55:39 (UTC)
Goto Top
Ok.

Das Problem war der Eintrag in Manifest.

http://msdn.microsoft.com/en-us/library/bb756929.aspx

ich habe einfach "highestAvailable" hingeschrieben und tut wieder alles face-smile

Ich danke Für eure Mühe

Grüße
Teddy
Member: Teddy74
Teddy74 Jun 20, 2011 at 13:06:01 (UTC)
Goto Top
Hallo nochmal,

ich habe jetzt Problem umgekehrt....

Das program läuft jetzt mit ohne AdminRechte...


Wenn ich im Program eine Konfigurationsdatei ändern muss, krige ich natürlich Fehler....

Wie kann ich dann dieses Windows-Pop-Up-Fenster mit Benutzername/Passwort eingabe aktivieren, bevor ich eine
XML Datei in C:\Programme ändern möchte?

Wie heisst dieses Fenster?