Inzwischen haben Sie hoffentlich mein Feature für 64-Bit-Windows in der neuesten Ausgabe von . gesehenPC Pro. Und vielleicht haben Sie sich aus meiner luftigen Versicherung getröstet, dass Sie sich nicht allzu viele Gedanken über die Anwendungskompatibilität machen müssen. Fast alle moderne 32-Bit-Software sollte unter einer 64-Bit-Version von Windows fehlerfrei installiert und ausgeführt werden.
Nun, wenn Sie so etwas schreiben, fragen Sie natürlich nach Ärger.
wie lösche ich mein iphone
Tatsächlich, gerade als unsere September-Ausgabe in den Kiosken landete, entdeckte ich dasPC Pro's interner CMS-Client funktionierte nur unter – Sie ahnen es – 32-Bit-Windows. Der Versuch, eine neue Überprüfung von meinem 64-Bit-Desktop zu erstellen, ergab nur einen obskuren Fehler über eine fehlende COM-Klassenfabrik.
Die Flaggen hissen
Ein wenig graben hat das Problem ans Licht gebracht. Irgendein ungezogener Entwickler hatte eine vollkommen gültige 32-Bit-.NET-Anwendung geschrieben, aber es versäumt, sie als speziellen 32-Bit-Code zu kennzeichnen. 64-Bit-Windows führte es daher im 64-Bit-Modus aus, was zu Fehlern führte, wenn die Software nicht auf die erwarteten 32-Bit-Systemressourcen zugreifen konnte.
Glücklicherweise ist dies ein leicht zu behebendes Problem. Microsofts CorFlags Mit dem Befehlszeilentool – Teil des .NET Frameworks – können Sie die Header-Flags von ausführbaren Dateien ändern, einschließlich des Flags, das angibt, wann eine Anwendung im 32-Bit-Modus ausgeführt werden muss. Das Setzen dieses Flags für unsere Datenbankanwendung war eine einfache Eingabe. CorFlags application.exe /32bit+
UndHier– eine 32-Bit-Anwendung, die perfekt auf 64-Bit-Windows läuft. Einen Versuch wert, wenn Sie jemals auf ein ähnliches Problem stoßen.
wie man in fortnite schneller bearbeitet
Welcher Ordner für Programmdateien?
Wo ich gerade beim Thema bin, hier ist ein verwandtes Problem, auf das wir damals stießen, als wir anfingen, PCs mit 64-Bit-Vista zu überprüfen. In diesem Fall war die lästige Software nichts anderes als diePC ProReal-World-Benchmark-Suite. Alles schien perfekt zu installieren, aber als wir die Tests tatsächlich starteten, erhielten wir Ressourcen, die nicht gefunden wurden.
Ich machte mich daran, dem Problem mit Hilfe von SysInternals’ indispensible auf die Spur zu kommen Prozessmonitor und wieder einmal erwies sich die Erklärung als gnädig einfach (so einfach, dass ich mich ein bisschen dumm fühlte, weil ich sie nicht selbst ausgearbeitet hatte).
Verschiedene Dateien wurden nicht gefunden, da der Ordner Programme unter 64-Bit-Windows nur für 64-Bit-Anwendungen reserviert ist. 32-Bit-Programme werden in einem Ordner namens Program Files (x86) installiert. Unsere Testskripts enthielten hartcodierte Pfade, die fehlschlugen, weil sich unsere 32-Bit-Anwendungen nicht an ihrem üblichen Speicherort befanden.
Passwörter aus CSV in Chrome importieren
Wenn Sie auf ein solches Problem stoßen, können Sie es leicht beheben, indem Sie explizite Verweise auf C:Program Files entfernen und stattdessen %ProgramFiles% verwenden (diese clevere Umgebungsvariable sollte je nach ob der Prozess, der es aufruft, 64-Bit oder 32-Bit ist). Wenn Sie nicht an die Quelle gelangen können, um die Pfade zu ändern, besteht eine schnelle und schmutzige Problemumgehung darin, Ihre 32-Bit-Dateien manuell in Programmdateien zu kopieren. Nachdem ich dies getan hatte, liefen unsere Benchmarks reibungslos.
Da haben Sie es also: 32-Bit-Anwendungentunauf 64-Bit-Windows laufen… aber manchmal müssen Sie ein paar Programmierannahmen umgehen, um sie zum Laufen zu bringen!