Frage

Ich habe in ein paar Stellen gelesen, dass der Desktop-Hintergrund kann zu einem HTML-Dokument festgelegt werden. Hat jemand keinen Erfolg hatte es programmatisch zu ändern?

Der folgende Ausschnitt aus VB6 hilft mir, Dinge für BMPs eingerichtet, aber wenn ich versuche, es für HTML zu verwenden, erhalte ich einen schönen blauen Hintergrund und nichts anderes.

Dim reg As New StdRegistry

Public Function CurrentWallpaper() As String
    CurrentWallpaper = reg.ValueEx(HKEY_CURRENT_USER, "Control Panel\Desktop", "Wallpaper", REG_SZ, "")
End Function

Public Sub SetWallpaper(cFilename As Variant)
    reg.ClassKey = HKEY_CURRENT_USER
    reg.SectionKey = "Control Panel\Desktop"
    reg.ValueKey = "Wallpaper"
    reg.ValueType = REG_SZ
    reg.Default = ""
    reg.Value = cFilename
End Sub

Public Sub RefreshDesktop()
    Dim oShell As Object
    Set oShell = CreateObject("WScript.Shell")
    oShell.Run "%windir%\System32\RUNDLL32.EXE user32.dll,UpdatePerUserSystemParameters", 1, True
End Sub

Vielleicht gibt es eine andere Einstellung, die erforderlich ist. Irgendwelche Ideen?

War es hilfreich?

Lösung

Ich bin nicht sicher, ob es eine offizielle API für diese ist, aber wenn Sie an es dein Herz könnte Sie Sysinternal der Process Monitor und sehen, welche Registrierungsschlüssel berührt werden, wenn Sie einen HTML-Desktop-Hintergrund über die Benutzeroberfläche festlegen. Dann würden Sie nur diese Änderungen in Ihrem Code wiederholen müssen. Allerdings würde ein API-Aufruf in Bezug auf den Vorwärts- / Rückwärtskompatibilität bei weitem vorzuziehen sein.

Andere Tipps

Ich glaube, Sie sicher, dass „Active Desktop“ machen, müssen eingeschaltet ist.

Sie könnten versuchen, HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\ForceActiveDesktopOn Einstellung 1 (gefunden

Okay, habe ich die Antwort auf meine Frage gefunden, dank egl1044 auf Experten-Austausch . Im Wesentlichen muss man mit dem IActiveDesktop Objekt sprechen. JPEGs als Wallpaper (ohne - Eine gute Umsetzung, dass in VB6 kann unter VB6 finden Umwandlung) .

Ich empfehle nur BMP-Format. Nicht ActiveDesctop verwenden, da Sie PC langsam danach arbeiten.

Näher: http: // www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/w2rkbook/gp.mspx?mfr=true


Aber es stellt sich heraus, dass ich in politischen Handlungsspielraum sidetracked bekommen. Was ich wirklich wollte, war auf den Desktop im User-Space zu setzen und die Richtlinieneinstellungen stehen lassen. Einige hilfreiche Dinge wurden hier gefunden: http: //blogs.msdn .com / Coding4Fun / Archiv / 2006/10/31 / 912569.aspx .

Dies ist nicht die endgültige Lösung, aber. Die Steuerung der HTML-Desktops ist immer noch außer Reichweite.


Es scheint, dass HTML-Einstellungen in HKCU \ Software \ Microsoft \ Internet Explorer \ Desktop \ Allgemein gespeichert sind. Allerdings nur, sie hier zu speichern nicht genug zu sein scheint. Ich muss noch den Mechanismus finden, auf dem Windows lässt wissen, welche Registrierungswerte festgelegt zu verwenden.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top