Scripts, registres, économiseurs d'écran, oh mon! J'essaie d'utiliser un économiseur d'écran sur une machine Windows XP 64 bits qui utilise une application .NET qui fait un appel interop qui s'appuie sur certaines Dock x86 Shockwave (une animation Shockwave). Tout doit être dans le répertoire% systemroot% \ WINNT \ SysWOW64. Lorsque le délai d'attente pour l'économiseur d'écran se produit, le processus devrait ressembler à ceci:Impossible d'écrire la valeur SysWow64 pour enregistrer avec vbscript pour Screensaver
Screensaver.scr -> application .NET -> animation shockwave.
Lors de l'installation, je veux un VBScript dans mon fichier économiseur d'écran pour copier le Screensaver.scr dans le répertoire SysWow64, puis définir la clé de registre appropriée à ce fichier pour Windows pour lancer l'économiseur d'écran.
Le code est quelque chose comme ceci:
Dim sScreenSaver, tScreenSaver
sScreenSaver = "C:\SourceFiles\bin\ScreenSaver.scr" 'screensaver
tScreenSaver = "C:\winnt\SysWOW64\"
Set WshShell = WScript.CreateObject("WScript.Shell") 'script shell to run objects
Set FSO = createobject("scripting.filesystemobject") 'file system object
'copy screensaver
FSO.CopyFile sScreenSaver, tScreenSaver, True
'set screen saver
Dim p1
p1 = "HKEY_CURRENT_USER\Control Panel\Desktop\"
WshShell.RegWrite p1 & "SCRNSAVE.EXE", (tScreenSaver & "ScreenSaver.scr")
Après l'installation, je peux vérifier le l'écran de veille existe dans le répertoire approprié.
(Il semblerait que ce soit dans les répertoires system32 et sysWOW64 --- que ce soit le script d'installation ou quelque chose que j'ai fait après l'installation.)
Cependant, l'entrée de registre n'est pas correcte. Dans les deux regedit 32 et 64 bits, je vois le HKCU \ ControlPanel \ Desktop \ SCRNSAVE.EX est réglé sur:
C:\WINNT\system32\Screensaver.scr
Ce n'est pas juste. L'économiseur d'écran ne fonctionnera pas à partir de ce répertoire. Il ne fonctionne qu'à partir de SysWOW64. Si je modifie manuellement le registre avec regedit sur le bon chemin SysWOW64, tout fonctionne correctement.
Est-ce un problème avec l'utilisation du script ou s'agit-il d'un problème de redirection de registre Windows ou de redirection de système de fichiers? Vous penseriez que ce serait simple ...