Vor ein paar Monaten habe ich ein Flash Support Gadget veröffentlicht. Dieses Gadget erlaubte es Benutzern, Minianwendungen mit Flash-Inhalten auch auf 64bit-Systemen auszuführen. Zuvor war dies nicht mit Leichtigkeit möglich, da die Sidebar auf 64bit-Systemen auch den 64bit-Internet Explorer benutzte, welcher bekanntlich kein Flash unterstützt. Für Benutzer ohne Computererfahrung war es nicht möglich Gadgets mit Flash-Inhalten auszuführen, also habe ich ein Tool programmiert, welches die Arbeit für eben diese Benutzer erledigt: das Flash Support Gadget (Download). Allerdings musste dieses Programm für jeden 64bit-PC einzeln installiert werden, von Gadget-Entwicklern kam der Wunsch auf, das Programm in Ihre Gadgets integrieren und ausführen zu können. Nun muss das Gadget nicht einzeln installiert werden, es kann nun mit Minianwendungen, die Flash-Inhalte nutzen, ausgeliefert werden und jeder Entwickler kann das Flash Support Gadget in seine Gadgets integrieren, um diese auf 64bit-Systemen zum Laufen zu bringen. Es muss nur folgende Datei hier heruntergeladen werden. Diese ausführbare Datei muss nun in den Gadget-Ordner kopiert werden, allerdings muss der Name “Windows Sidebar – Flash Support.exe” beibehalten werden. Jetzt muss nur noch der folgende Code in das Gadget kopiert werden, welches Sie 64bit-kompatibel machen möchten:
<script type=”text/vbscript”>
function confirm(message, title)
dim res
res = MsgBox (message, 36, title)
if res=6 then
confirm = true
else
confirm = false
end if
end function
Dim objWMI, OSList, bit
Set objWMI = GetObject(“winmgmts:\\.\root\cimv2″)
Set OSList = objWMI.ExecQuery(“Select * from Win32_OperatingSystem”)
For Each OS in OSList
bit=OS.OSArchitecture
Next</script>
<script type=”text/javascript”>
var WshShell = new ActiveXObject(‘WScript.Shell’);
if((bit.toLowerCase()==”64-bit” || bit.toLowerCase()==”64″ || bit.toLowerCase()==”64bit” || bit.toLowerCase()==”amd64″))
{
var keyExists=true;
try
{
WshShell.RegRead(“HKEY_LOCAL_MACHINE\\SOFTWARE\\CyberBoy\\Windows 64bit Sidebar Flash Support\\fixed”);
}
catch(ex)
{
keyExists=false;
}
if((keyExists && WshShell.RegRead(“HKEY_LOCAL_MACHINE\\SOFTWARE\\CyberBoy\\Windows 64bit Sidebar Flash Support\\fixed”)==”false”) || !keyExists)
{
var changeSidebar=confirm(“This gadget uses flash content which will not be available unless you use the 32bit-sidebar because you are running 64bit-Windows. Choose \”yes\” to use the 32bit-version of the sidebar.\n\nDo you want to make this and other gadgets work properly by using the 32bit-sidebar?”, “Problems on 64bit-systems”);
if(changeSidebar)
{
var Pfad=System.Gadget.path;
if(Pfad.substr(Pfad.length – 1, 1)!=”\\”)
{
Pfad+=”\\”;
}
System.Shell.execute(Pfad+”Windows Sidebar – Flash Support.exe”, “fix”);
}
}
}
</script>
Die ausführbare Datei des Flash Support Gadgets bietet zwei Möglichkeiten an:
- Fehler der Sidebar beheben (die 32bit-Sidebar benutzen) – diese Funktion wird mit dem Kommandozeilenparameter “fix” aufgerufen
- die Sidebar auf ihre Standardeinstellungen zurücksetzen (die 64bit-Version benutzen) – diese Funktion wird mit dem Kommandozeilenparameter “restore” ausgeführt
- Beim Aufruf des Programms ohne Kommandozeilenparameter öffnet sich folgendes Fenster:
Beim Wählen einer der oben genannten Funktionen schreibt das Flash Support Gadget “true” oder “false” als Zeichenkette (String) in den folgenden Registry-Key: “HKEY_LOCAL_MACHINE\\SOFTWARE\\CyberBoy\\Windows 64bit Sidebar Flash Support\\fixed“. So weiß Ihr Gadget, ob die aktuell ausgeführte Sidebar die 32bit- oder die 64bit-Version des Internet Explorers benutzt.
