2 simple fragen zu AutoIt

07/25/2009 22:17 VALL3#1
Also wie der Tietel schon sagt hab ich ma 2 fragen zu autoit^^

also ich wolte fragen ob mir jemand erklärenkann wie man mit autoit das desktop pic ändert

und dann noch

wie man bei FileMove ("C:\\ usw wo dann der benutzername hin kommt z.b. bei mir Valle, wie der script das selbst rausfindet?

also dass es z.b. heißt wenn es in den autostart ordner soll

Quote:
"C:\Dokumente und Einstellungen\DIES HIER SOLL RAUS GE FUNDEN WERDEN\Startmenü\Programme\Autostart")
07/25/2009 22:52 VALL3#2
jemand da?^^
07/25/2009 23:25 kknb#3
zu 2. @StartupCommonDir ----Pfad zum Autostart-Ordner
07/26/2009 11:26 VALL3#4
danke:D genau das hab ich gesucht^^
nur wie bringt man das ein?einfach @StartupCommonDir oda FileMove ("@StartupCommonDir") oda wie?
07/26/2009 11:38 AllesVergeben#5
Probiers doch aus.

mfG
07/26/2009 11:59 VALL3#6
jo hab ich...ehm weiß jemand ne wantwort auf die 1. frage??
07/26/2009 12:17 Xereon#7
Das ändern des Hintergrundbildes dürfte über das ersetzen von Bildern oder Pfäden nicht möglich seien, da Microsoft das Desingn als Theme abspeichert. Dh könnte das zB custom.theme heißen. In diesen Themes befinden sich Angaben zum kompletten Design. Ich habe mal versucht diese Theme files mit einem Texteditor zu öffnen jedoch keine Angaben zum Hintergrundbild gefunden. Jedoch könntes du mal versuchen das ändern des Designs auf normalen Wege zu simulieren: Dh. Du beginnst damit das die Maus ein Rechtsklick macht, dann auf den Menüpunkt "Hintergrundbild" klickt usw.
07/26/2009 12:33 VALL3#8
ja ich weiß...darum meinte ich das auch so wie daas @StartupCommonDir als beispiel...man könnte auch FileMove ("blablabla") um in den autostart zu kommn...aber @StartupCommonDir is der direkte befehl..und soeinen gibs auch bei desktop...geht ma [Only registered and activated users can see links. Click Here To Register...] und auf yanghack..dan wird der bildschirm nac einem kleinen "dialog" scharz und des desktop bild is anders...so meinte ich des
07/26/2009 14:41 Xereon#9
Quote:
Originally Posted by VALL3 View Post
ja ich weiß...darum meinte ich das auch so wie daas @StartupCommonDir als beispiel...man könnte auch FileMove ("blablabla") um in den autostart zu kommn...aber @StartupCommonDir is der direkte befehl..und soeinen gibs auch bei desktop...geht ma [Only registered and activated users can see links. Click Here To Register...] und auf yanghack..dan wird der bildschirm nac einem kleinen "dialog" scharz und des desktop bild is anders...so meinte ich des
Hab mich mal im Helpfile umgeguckt und darauf gestoßen das sich die Makros auf die values in:
Code:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion
beziehen.
Ein bischen herrumgeschnüffelt und folgenden Reg eintrag gefunden:
Code:
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Themes\LastTheme
.
In diesem Eintrag befindet sich der Pfad zum Hintergrundbild(oder müsste sich befinden, ich habe es noch nicht getestet).
Also müsstes du um den Pfad zu bekommen folgenendes machen:
Code:
$Pfad = RegRead("HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Themes\LastTheme","Wallpaper")
Hoffe das dir das hilft ;)
07/26/2009 15:38 SCORNI#10
@topic
das mit dem hintergrund bild:ka
das mit dem benutzername herausfinden: kknb hat ja schon gepostet wie man direkt in den autotstart ordner kommt aber hier die antwort zur frage
PHP Code:
@username 
@4ter post
Quote:
("@StartupCommonDir")
fast richtig
nur noch die klammern weg :D
07/26/2009 18:58 felixli93#11
Code:
Func ChangeDesktopWallpaper($bmp)
	;The $SPI* values could be defined elsewhere via #include - if you conflict,
	; remove these, or add if Not IsDeclared "SPI_SETDESKWALLPAPER" Logic
	Local $SPI_SETDESKWALLPAPER = 20
	Local $SPIF_UPDATEINIFILE = 1
	Local $SPIF_SENDCHANGE = 2
	Local $REG_DESKTOP= "HKEY_CURRENT_USER\Control Panel\Desktop"

	;Don't tile -  just center
	RegWrite($REG_DESKTOP, "TileWallPaper", "REG_SZ", 0)
	RegWrite($REG_DESKTOP, "WallpaperStyle", "REG_SZ", 0)
	RegWrite($REG_DESKTOP, "Wallpaper", "REG_SZ", $bmp)

	DllCall("user32.dll", "int", "SystemParametersInfo", _
	"int", $SPI_SETDESKWALLPAPER, _
	"int", 0, _
	"str", $bmp, _
	"int", BitOR($SPIF_UPDATEINIFILE, $SPIF_SENDCHANGE))
	Return 0
EndFunc;==>_ChangeDestopWallpaper
UDF zum verändern des Hintergrundbildes (übrigens nach 2 minuten google gefunden!!!)
07/27/2009 11:16 VALL3#12
ok thx nur noch 1 frage...
wie mach ich das wenn ich den file nich weiß...bzw. kann man das nciht so machen das er einfach das pic mit dem namen x.bmp im selben ordner sucht und nimmt?
07/27/2009 12:05 Xereon#13
Quote:
Originally Posted by VALL3 View Post
ok thx nur noch 1 frage...
wie mach ich das wenn ich den file nich weiß...bzw. kann man das nciht so machen das er einfach das pic mit dem namen x.bmp im selben ordner sucht und nimmt?
PHP Code:
$search FileFindFirstFile("*.bmp")
FileClose($search
Wenn du ein zufälligen File nehmen willst:
PHP Code:
$search FileFindFirstFile("*.bmp")

If 
$search = -1 Then
;~     ERROR
Else
    ;~ 
Suche nach jeden File und abspeicherung in $Files[x]
    
Dim $Files[1]
    
$counter 0
    
While 1
        $Files
[$counter] = FileFindNextFile($search)
        If @
error Then
            ExitLoop
        
EndIf
        
ReDim $Files[$counter +1
        
$counter $counter +1
    WEnd

    
;~ Zufällige DAtei herraus suchen:
    
$Dein_File $Files[Random(0,UBound($Files) - 1,1)
EndIf