Einzelnen Beitrag anzeigen

surfer007

Registriert seit: 17. Jan 2010
51 Beiträge
 
Delphi 7 Professional
 
#1

Autostart RUN und RUNONCE

  Alt 20. Jan 2016, 21:08
Hallo,

ich starte meine Anwendung via Registry RUNONCE und zur Sicherheit nochmal in der RUN Sektion, klappt auch soweit gut. RUNONCE damit meine Anwendung die aller erste Anwendung beim Windows Start ist. Nun habe ich einen Kunden mit Windows10 der meint nach einem Power Off startet die Anwendung (Kiosk) meist nicht. Also irgendwas löscht den RUN und RUNONCE Eintrag. Ja, der RUNONCE wird von meiner Anwendung nach dem Start wieder angelegt, ist also da! User ist Administrator und UAC Anforderung ist als Manifest drin. Bei Tests in einer VM mit Win10 konnte ich nichts feststellen, bei mir funktioniert es immer. Das ist der Code der die Start Einträge anlegt:

Delphi-Quellcode:
    
    
    // HKEY_LOCAL_MACHINE
    
    if TPJOSInfo.IsWow64 then begin
      MyPrg := TRegistry.Create(KEY_ALL_ACCESS OR KEY_WOW64_64KEY);
    end else begin
      MyPrg := TRegistry.Create(KEY_ALL_ACCESS OR KEY_WOW64_32KEY);
    end;
      MyPrg.Rootkey := HKEY_LOCAL_MACHINE;
      MyPrg.LazyWrite := false;
      try
        try
          if MyPrg.Openkey('Software\Microsoft\Windows\CurrentVersion\Policies\Explorer', true) then begin
            MyPrg.WriteInteger('DisableLocalUserRunOnce', 0);
          end;
        except
          MyLogAdd('Error writing registry: DisableLocalUserRunOnce', False);
        end;
      finally
        MyPrg.CloseKey;
      end;

      try
        try
          if MyPrg.Openkey('Software\Microsoft\Windows\CurrentVersion\RunOnce', true) then begin
            MyPrg.WriteString('!KioskStart', '"' + sPath + 'kioskstart.exe"');
          end;
        except
          MyLogAdd('Error writing registry: !KioskStart', False);
        end;
      finally
        MyPrg.CloseKey;
      end;

      try
        try
          if MyPrg.Openkey('Software\Microsoft\Windows\CurrentVersion\Run', true) then begin
            MyPrg.WriteString('Kiosk', '"' + sPath + 'kiosk.exe" /bootstart');
          end;
        except
          MyLogAdd('Error writing registry: Kiosk', False);
        end;
      finally
        MyPrg.CloseKey;
      end;
    MyPrg.Free;
Hat jemand einen Tipp warum das auf Win10 nach einem Power Off nicht mehr startet?
  Mit Zitat antworten Zitat