Announcement

Collapse
No announcement yet.

Programm läuft nur mit Administratorrechten

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Programm läuft nur mit Administratorrechten

    Hallo Zusammen,

    ein von mir entwickeltes Programm, läuft nur, wenn der
    angemeldete Benutzer Administratorrechte besitzt.
    Woran liegt das ? Was kann man dangegen machen ?

    Markus

  • #2
    > Woran liegt das?
    Da wirst du halt irgendwas machen was Adminrechte erfordert

    > Was kann man dangegen machen ?
    Einfach die betrefenden Funktionen nicht mehr verwenden.

    Wenn du dich jetzt über meine Nicht sehr hilfreiche Antwort beschweren solltest lies mal deine Fragestellung durch? Wenn ich die Autowerkstatt anruf und meine Fehlerbeschreibung lautet "Das Auto geht nicht. Was ist kaputt" werde ich eine genauso passende Antwort bekommen.

    Also: Wie äußert sich dieses Problem. Unter welchen BS tritt das auf (Win95 wohl nicht).

    Wenn ich meine Glaskugel befrage sagt diese das eine Programm irgendwas mit Install, Update oder Setup im Namensbestandteil oder in den Programminformationen hat und du das Problem unter Vista hast.

    Comment


    • #3
      Die Glaskugel liegt falsch....

      Betriebssystem: Win XP Prof
      Programm verwendet BDE
      ExeName: "QuickplanPro.exe"
      Meldung: EXE hat ein Fehler verursacht und wird geschlossen
      Benutzer hat vollen Zugriff auf das Installationsverzeichnis und auf das BDE Installationsverzeichnis

      Ich denke es muss was mit den Rechten zu tun haben, da das Programm
      mit Adminrechte einwandfrei läüft. Kann es vielleicht sein, dass nicht in die Registry
      geschrieben werden kann? Ich tippe auch auf die BDE als Ursache.

      Comment


      • #4
        Als Nicht-Admin bleibt dir der HKEY_LOCAL_MACHINE-Zweig verwehrt.

        Und das die BDE ohne Admin-Rechte abstürzt wäre mir neu.

        Comment


        • #5
          Danke Bernhard für Deine Hilfe,

          dass ein Nicht-Admin nicht auf HKEY_LOCAL_MACHINE zugreifen kann war mir neu.

          Da das Programm mit Admin-Rechten läuft denke ich dass es an irgendwelchen Zugriffsrechten liegt.
          Mein Programm selbst nimmt keine Eintragungen in der Registry vor. Es schreibt lediglich in sein eigenes Installationsverzeichnis. Gibt es vielleicht Komponenten aus der VCL die irgendwelche Schreibzugriffe vornehmen? Gibt es irgeneine DLL die man nur als Admin verwenden darf ?
          Kann man den Zugriff auf HKEY_LOCAL_MACHINE für einzelne Benutzer freigeben ?

          Noch ein Hinweis:
          Wenn ich es mit dem Debugger starte erreicht es nicht einmal die erste Programmzeile, die Ausführung wir vorher gestoppt.
          Zuletzt editiert von Markus Sommer; 23.05.2007, 19:41.

          Comment


          • #6
            dass ein Nicht-Admin nicht auf HKEY_LOCAL_MACHINE zugreifen kann war mir neu.
            Sorry, kann nur lesend darauf zugreifen. Aber die TRegistry-Klasse versucht es mit Schreibrechten wenn nicht passende optionale Properties gesetzt sind.

            Wenn ich es mit dem Debugger starte erreicht es nicht einmal die erste Programmzeile, die Ausführung wir vorher gestoppt.
            Dann können es noch 2 Fehlerquellen sein:
            - Der Code der in den initialisierungsabschnitten von Units abläuft
            - Fest gebundene DLLs. Deren Initialisierungscode läuft auch vor dem eigentlichen Hauptprogramm-Code.

            Comment


            • #7
              Ja, das ist stimmt...

              => Die suche nach der Nadel im Heuhaufen (das PRG besteht auf hunderten von Units)

              Gibt es eine Möglichkeit den Code in den Initialisierungsabschnitten zu debuggen ?
              Gibt es eine Möglichkeit festzustellen ob bei der Initializierung einer DLL ein Fehler auftritt ?

              Gibt die Tatsache dass das Programm mit Adminrechten einwandfrei läuft einen Hinweis auf ein bestimmte System-DLL ?
              Zuletzt editiert von Markus Sommer; 24.05.2007, 17:32.

              Comment

              Working...
              X