[AutoIt] Autostart Controlle

06/11/2010 21:44 sido47#1
Hi, ich hab folgendes Problem
ich will ein Prog machen mitdem man die Sachen die im Autostart sind auslesen kann und dann Anzeigen und dann noch ändern kann oder neue hinzufügen aber
mir fehlt die Erfahrung und ich konnte keine passenden Befehle finden (via Google )

Kann mir villt einer einen Befehle oder Scriptteile sagen

also sowas wie Regread() aber da komme ich ned weiter

Hoffe auf Hilfe
06/11/2010 21:54 HardCore.1337#2
Kennst du den grundlegenden Aufbau der Registry?
06/11/2010 22:10 sido47#3
Ja schon
also ich zeig dir mal meinen Fehler bei RegRead

Quote:
$var = RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Win dows\CurrentVersion\Run","Hier weis ich ned was da hin soll damit mir die Programme angezeigt werden")
MsgBox(0, "Program files in:", $var)
Also ich hab mir mit Regedit(von Win 7) den pfad rausgesucht und eingetragen aber es Fehlt ein Parameter bei Regedit und damit komm ich ned klar
06/11/2010 22:13 °Remus°#4
dazu brauch man nicht umbedingt die registry auslesen

Code:
#Include <File.au3>
#Include <Array.au3>

$FileList=_FileListToArray(@UserProfileDir&"\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup")
If @Error=1 Then
	MsgBox (0,"","No Folders Found.")
	Exit
EndIf
If @Error=4 Then
	MsgBox (0,"","No Files Found.")
	Exit
EndIf
_ArrayDisplay($FileList,"$FileList")
ist eig nur c&p aus dem Hilfe text zu _FileListToArray und auf den befehl bin ich durch google gekommen
06/12/2010 00:16 sido47#5
C:\Users\Username\AppData\Roaming\Microsoft\Window s\Start Menu\Programs\Startup

wenn du diesen Pfad angibst dann werden nicht alle programme die im Autostart sind angezeigt sondern nur welche die vom Benutzer dort eingefügt worden sind.
Trotzdem Danke aber ich glaub ma muss die reg auslesen

Weitere Ideen ?
06/12/2010 10:12 Shadow992#6
Quote:
Originally Posted by sido47 View Post
C:\Users\Username\AppData\Roaming\Microsoft\Window s\Start Menu\Programs\Startup

wenn du diesen Pfad angibst dann werden nicht alle programme die im Autostart sind angezeigt sondern nur welche die vom Benutzer dort eingefügt worden sind.
Trotzdem Danke aber ich glaub ma muss die reg auslesen

Weitere Ideen ?
Du hast dir doch selbst die Frage schon beantwortet :
Quote:
Trotzdem Danke aber ich glaub ma muss die reg auslesen
Die Funktionen RegRead , RegWrite , RegEnumVal und RegEnumKey könnten dir helfen ...
06/12/2010 18:57 sido47#7
Ja ich weiss ich wusste blos nciht genau wie aber ich habs schon


Hier mal ein kleiner Beispiel:
Quote:
For $i = 1 to 100
$var = RegEnumVal("HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ Windows\CurrentVersion\Run", $i)
$var1 = RegEnumVal("HKEY_CURRENT_USER\Software\Microsoft\W indows\CurrentVersion\Run", $i)
if @error <> 0 Then ExitLoop
MsgBox(4096, "AutoRun", $var)
MsgBox(4096, "AutoRun", $var1)
Next