Walpaper >>>-Code überarbeitet-<<<
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
Walpaper >>>-Code überarbeitet-<<<
Hallo,
Ich möchte Herausfinden was für ein Hontergrungbild sich auf meinem Desktop befindet. Ich möchte es aber auch ändern können mit meinem Programm... wie kann ich das am besten machen?
Ich möchte Herausfinden was für ein Hontergrungbild sich auf meinem Desktop befindet. Ich möchte es aber auch ändern können mit meinem Programm... wie kann ich das am besten machen?
Zuletzt geändert von Tsuki-Namida am 26.01.2006 22:24, insgesamt 1-mal geändert.
-
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
Zum Beispiel mal "Registry auslesen" eingeben,
dann findet man dass hier:
dann findet man dass hier:
Code: Alles auswählen
Procedure.s ReadRegKey(OpenKey.l,SubKey.s,ValueName.s)
hKey.l=0
keyvalue.s=Space(255)
datasize.l=255
If RegOpenKeyEx_(OpenKey,SubKey,0,#KEY_READ,@hKey)
keyvalue="Error Opening Key"
Else
If RegQueryValueEx_(hKey,ValueName,0,0,@keyvalue,@datasize)
keyvalue="Error Reading key"
Else
keyvalue=Left(keyvalue,datasize-1)
EndIf
RegCloseKey_(hKey)
EndIf
ProcedureReturn keyvalue
EndProcedure
Debug ReadRegKey(#HKEY_CURRENT_USER, "Software\Microsoft\Multimedia\Sound Mapper", "Playback")
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
-
- Beiträge: 6291
- Registriert: 29.08.2004 08:37
- Computerausstattung: Hoffentlich bald keine mehr
- Kontaktdaten:
Magix-Soft <Kain> hat geschrieben:hmmm ich bekomme ein "Error Opening Key" ausgegeben....
Code: Alles auswählen
Procedure.s ReadRegKey(OpenKey.l,SubKey.s,ValueName.s)
hKey.l=0
keyvalue.s=Space(255)
datasize.l=255
If RegOpenKeyEx_(OpenKey,SubKey,0,#KEY_READ,@hKey)
keyvalue="Error opening key."
Else
If RegQueryValueEx_(hKey,ValueName,0,0,@keyvalue,@datasize)
keyvalue="Error reading key."
Else
keyvalue=Left(keyvalue,datasize-1)
EndIf
RegCloseKey_(hKey)
EndIf
ProcedureReturn keyvalue
EndProcedure
Debug ReadRegKey(#HKEY_CURRENT_USER, "Control Panel\Desktop", "Wallpaper")
Angenommen es gäbe einen Algorithmus mit imaginärer Laufzeit O(i * n), dann gilt O((i * n)^2) = O(-1 * n^2) d.h. wenn man diesen Algorithmus verschachtelt ist er fertig, bevor er angefangen hat.
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
- Tsuki-Namida
- Beiträge: 633
- Registriert: 17.11.2005 13:27
- Kontaktdaten:
So da ich ja ein Hintergrund Bild setzen möchte habe ich diese Prozedure genommen:
Um ein Wallpaper zu setzen muss ich doch "SetWallpaper(C:\Wallpaper.jpg)" machen oder? gut ich habe es mit einem String gemacht... "SetWallpaper(String$)" nur ich bekomme einen Error "Invalid memory access."
in der Zeile:
ProcedureReturn CallFunction(DesktopPreferences_Lib, "SHSetValueA", #HKEY_CURRENT_USER, "Control Panel\Desktop", "Wallpaper", #REG_SZ, Val, Len(Val)+1)
Was habe ich da falsch gemacht?
Code: Alles auswählen
Procedure SetWallpaper(Val.s)
Shared DesktopPreferences_Lib
ProcedureReturn CallFunction(DesktopPreferences_Lib, "SHSetValueA", #HKEY_CURRENT_USER, "Control Panel\Desktop", "Wallpaper", #REG_SZ, Val, Len(Val)+1)
EndProcedure
in der Zeile:
ProcedureReturn CallFunction(DesktopPreferences_Lib, "SHSetValueA", #HKEY_CURRENT_USER, "Control Panel\Desktop", "Wallpaper", #REG_SZ, Val, Len(Val)+1)
Was habe ich da falsch gemacht?