AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Autostart RUN und RUNONCE

Ein Thema von surfer007 · begonnen am 20. Jan 2016 · letzter Beitrag vom 22. Jan 2016
Antwort Antwort
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#1

AW: Autostart RUN und RUNONCE

  Alt 20. Jan 2016, 22:41
Zitat:
Viel Arbeit um etwas zu ersetzen das immer funktionierte.
Offensichtlich ja nicht immer.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#2

AW: Autostart RUN und RUNONCE

  Alt 21. Jan 2016, 06:51
Wenn ich die Shell durch meine SW ersetze, kann ich dann noch eine TShellView o.ä. verwenden? Und wenn es um Icons geht, die beim Anklicken ein Programm ausführen, ginge das nicht auch mit einem Button oder -noch einfacher- mit einem TImage.OnClick, oder -warte- mit einer TListView im Icon-Modus? "Viel Arbeit" wäre das ja nicht.
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#3

AW: Autostart RUN und RUNONCE

  Alt 21. Jan 2016, 06:54
Zitat:
TListView im Icon-Modus
Der original Desktop ist übrigens nichts anderes.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#4

AW: Autostart RUN und RUNONCE

  Alt 21. Jan 2016, 09:03
Ach was. Darauf wollte ich dezent hinweisen.
  Mit Zitat antworten Zitat
surfer007

Registriert seit: 16. Jan 2010
51 Beiträge
 
Delphi 7 Professional
 
#5

AW: Autostart RUN und RUNONCE

  Alt 21. Jan 2016, 15:31
Der Kunde soll seinen Desktop einrichten können wie er will. Wenn es statisch wäre könnte man schnell was zusammen klicken, aber um so etwas dynamisch zu haben sehe ich doch etwas mehr Arbeit. Ok, Eine EXE auswählen und in eine Liste aufnehmen ist keine Sache, das ganze in einer INI speichern auch nicht. Dann muss man aber noch das Programm Icon extrahieren, und es möglich machen die Icons zu verschieben. Wollte eigentlich nicht den Desktop neu erfinden, hat M$ schon gemacht. Ich wollte nur das mein RUNONCE Eintrag ausgeführt wird.

Die Anwendung als Shell zu fahren scheint mir dann auch der richtige Weg zu sein, da kann man sich beruhigt zurück lehnen und weiß das Teil startet garantiert.

Wenn ich die Shell auf z.B. c:\kiosk\kiosk.exe ändere kommt der kiosk, soweit ok. Bei laufendem Kiosk möchte ich nun den Windows Desktop starten, bei starten von c:\windows\explorer.exe kommt aber leider der Windows Explorer mit Arbeitsplatz Ansicht. Nur wenn der Shell Eintrag in der Registry auf explorer.exe steht kommt bei starten (ShellExecute vom Kiosk) von c:\windows\explorer.exe der Desktop. Wie kann ich den Desktop per Kommandozeile starten wenn als Shell was anderes als explorer.exe drin steht (unter HKLM Software\Microsoft\Windows NT\CurrentVersion\Winlogon)? So könnte der Kiosk als Shell starten und später wenn benötigt der normale Windows Desktop gestartet werden.

Man könnte vor Aufruf kurzzeitig den Shell Eintrag auf explorer.exe setzen, dann ShellExecute explorer.exe, und dann wieder den Kiosk als Shell reinschreiben. Eleganter wäre aber ein direkter Aufruf ohne den Shell Eintrag dabei umbiegen zu müssen.

Geändert von surfer007 (21. Jan 2016 um 17:26 Uhr)
  Mit Zitat antworten Zitat
HolgerX

Registriert seit: 10. Apr 2006
Ort: Leverkusen
984 Beiträge
 
Delphi 6 Professional
 
#6

AW: Autostart RUN und RUNONCE

  Alt 22. Jan 2016, 04:22
Hmm..

Ich hatte mal ein bischen mit einem Dienst rumgespielt, welcher bei Login eines Users eine Exe startet.
So wie es z.B. Virenscanner machen um eine GUI in die Taskleiste zu parken.

So verbleibt der Explorer als Shell, jedoch wird nach dem Login direkt (durch den Dienst) deine Kiosk-App gestartet.

Getestet hatte ich das bis Win7.

Weiß bloß nicht, wo das abgeblieben ist und es noch wirklich funktioniert....
  Mit Zitat antworten Zitat
Dejan Vu
(Gast)

n/a Beiträge
 
#7

AW: Autostart RUN und RUNONCE

  Alt 22. Jan 2016, 06:35
Dann muss man aber noch das Programm Icon extrahieren, und es möglich machen die Icons zu verschieben. Wollte eigentlich nicht den Desktop neu erfinden, hat M$ schon gemacht.
EBEN. Und deshalb nimmst Du die TListView/TShellListView-Komponente. Icons extrahieren ist auch simpel. Übrigens ist deine Tastatur kaputt. Da kommt statt eines 'S' ein '$', komischerweise auch nicht immer.
  Mit Zitat antworten Zitat
Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#8

AW: Autostart RUN und RUNONCE

  Alt 22. Jan 2016, 07:47
Also das erste was gestartet wird sind die Programme, die unter dem Schlüssel
Code:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Userinit
eingetragen sind. Per Default ist das
Code:
C:\Windows\system32\userinit.exe,
Diese userinit.exe macht so ein paar Dinge (logonscripts, ...) und schaut in der Registry was bei dem Eintrag
Code:
HKCU\Software\Microsoft\Windows NT\CurrentVersion\WinLogon\Shell
steht bzw. wenn da nichts eingetragen ist was bei dem Eintrag
Code:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon\Shell
steht und startet diese Anwendung.

Was wohl passieren würde, wenn man in der Registry eine eigene Anwendung als Userinit einträgt?
Code:
<WoAuchImmer>\kiosk_userinit.exe,
Und die wiederum prüft, was für ein Anwender da gerade am Werke ist.
  • Ist es ein reiner Kiosk-Mode-Anwender, dann bearbeitet man den Shell-Eintrag für diesen Anwender (Kiosk-Anwendung dort rein) und startet die originale userinit.exe
  • Ist es ein Kiosk-Mode-Anwender, der den Desktop benötigt, dann lösche ich den Shell-Eintrag für diesen Anwender, starte die Kiosk-Anwendung und dann die originale userinit.exe
  • Ist es kein Kiosk-Mode-Anwender (Administratoren, etc.) dann startet man einfach nur die originale userinit.exe
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:59 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz