VB6 Anwendungen leben weiter! Warum auch nicht: alle Hürden der neuen Betriebssysteme lassen sich bis heute meistern. Beispiele für Unicode oder den Umgang mit dem UAC gibt es genug im Netz. Die neue Herausforderung heißt 64Bit, die nun seit geraumer Zeit zum Auslieferungsstandard von Microsoft geworden ist. Je nach Art und Umfang der Anwendung ist es erforderlich zu wissen, ob wir auf einem 32 oder 64 Bit Betriebssystem unterwegs sind. Auch hier ist die Lösung per API relativ einfach zu realisieren. Fügen Sie folgenden Code in ein Basic-Modul ein: ' Benötigte API-Deklarationen Public Declare Function GetModuleHandleA Lib "kernel32" ( _ ByVal lpModuleName As String) As Long Public Declare Function GetProcAddress Lib "kernel32" ( _ ByVal hModule As Long, _ ByVal lpProcName As String) As Long Public Declare Function IsWow64Process Lib "kernel32" ( _ ByVal hProcess As Long, _ ByRef Wow64Process As Long) As Long Public Declare Function GetCurrentProcess Lib "kernel32" () As Long ' Globale Variable Public is64BitWin As Boolean In der Programminitialisierungs-Routine Ihrer Anwendung fügen Sie nun folgende Zeilen ein: Dim ret As Long ' 32-Bit oder 64-Bit System? If GetProcAddress(GetModuleHandleA("kernel32.dll"), "IsWow64Process") Then IsWow64Process GetCurrentProcess, ret is64BitWin = (ret <> 0) End If Die Variable is64BitWin können Sie nun an beliebiger Stelle im Programm abfragen und entsprechend reagieren. Zum Verständnis: Ist die Funktion "IsWow64Process" bekannt, so kann sie aufgerufen werden. Der Rückgabewert "ret" ist ungleich "0", wenn die Anwendung im 32Bit Modus (x86) auf einem 64Bit Betriebssystem läuft. Dieser Tipp wurde bereits 14.044 mal aufgerufen.
Anzeige
Diesen und auch alle anderen Tipps & Tricks finden Sie auch auf unserer aktuellen vb@rchiv (einschl. Beispielprojekt!) Ein absolutes Muss - Geballtes Wissen aus mehr als 8 Jahren vb@rchiv! - nahezu alle Tipps & Tricks und Workshops mit Beispielprojekten - Symbol-Galerie mit mehr als 3.200 Icons im modernen Look Weitere Infos - 4 Entwickler-Vollversionen (u.a. sevFTP für .NET), Online-Update-Funktion u.v.m. |
sevISDN 1.0 ![]() Überwachung aller eingehender Anrufe! Die DLL erkennt alle über die CAPI-Schnittstelle eingehenden Anrufe und teilt Ihnen sogar mit, aus welchem Ortsbereich der Anruf stammt. Weitere Highlights: Online-Rufident, Erkennung der Anrufbehandlung u.v.m. Tipp des Monats Heinz Prelle Datei-Mehrfachauswahl an eine ListBox übergeben Dieser Tipp zeigt, wie Sie über den Windows-CommonDialog eine Mehrfach-Dateiauswal realisieren... sevWizard für VB5/6 ![]() Professionelle Assistenten im Handumdrehen Erstellen Sie eigene Assistenten (Wizards) im Look & Feel von Windows 2000/XP - mit allem Komfort und zwar in Windeseile :-) |
||||||||||||||||
|
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein. |
|||||||||||||||||


32- oder 64Bit Betriebssystem?


