GetBinaryTypeW-Funktion (winbase.h)

Bestimmt, ob es sich bei einer Datei um eine ausführbare Datei (.exe) handelt, und wenn ja, welches Subsystem die ausführbare Datei ausführt.

Syntax

BOOL GetBinaryTypeW(
  [in]  LPCWSTR lpApplicationName,
  [out] LPDWORD lpBinaryType
);

Parameter

[in] lpApplicationName

Der vollständige Pfad der Datei, deren ausführbarer Typ bestimmt werden soll.

Standardmäßig ist der Name auf MAX_PATH Zeichen beschränkt. Um diesen Grenzwert auf 32.767 Breitzeichen zu erweitern, stellen Sie dem Pfad "\\?\" voran. Weitere Informationen finden Sie unter Benennen von Dateien, Pfaden und Namespaces.

Tipp

Ab Windows 10 Version 1607 können Sie die MAX_PATH-Einschränkung aufheben, ohne "\\?\" vorab ausstehen zu müssen. Ausführliche Informationen finden Sie im Abschnitt "Maximale Längenbeschränkung für Pfade" unter Benennen von Dateien, Pfaden und Namespaces .

[out] lpBinaryType

Ein Zeiger auf eine Variable zum Empfangen von Informationen über den ausführbaren Typ der datei, die durch lpApplicationName angegeben wird. Die folgenden Konstanten werden definiert.

Wert Bedeutung
SCS_32BIT_BINARY
0
Eine 32-Bit-Windows-basierte Anwendung
SCS_64BIT_BINARY
6
Eine 64-Bit-Windows-basierte Anwendung.
SCS_DOS_BINARY
1
Eine MS-DOS-basierte Anwendung
SCS_OS216_BINARY
5
Eine 16-Bit-Betriebssystem-/2-basierte Anwendung
SCS_PIF_BINARY
3
Eine PIF-Datei, die eine MS-DOS-basierte Anwendung ausführt
SCS_POSIX_BINARY
4
Eine POSIX -basierte Anwendung
SCS_WOW_BINARY
2
Eine 16-Bit-Windows-basierte Anwendung

Rückgabewert

Wenn die Datei ausführbar ist, ist der Rückgabewert ungleich null. Die Funktion legt die Variable fest, auf die von lpBinaryType verwiesen wird, um den ausführbaren Typ der Datei anzugeben.

Wenn die Datei nicht ausführbar ist oder die Funktion fehlschlägt, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf. Wenn es sich bei der Datei um eine DLL handelt, wird der letzte Fehlercode ERROR_BAD_EXE_FORMAT.

Bemerkungen

Alternativ können Sie dieselben Informationen abrufen, indem Sie die SHGetFileInfo-Funktion aufrufen und das flag SHGFI_EXETYPE im uFlags-Parameter übergeben.

Verhalten symbolischer Verknüpfungen: Wenn der Pfad auf einen symbolischen Link verweist, wird die Zieldatei verwendet.

In Windows 8 und Windows Server 2012 wird diese Funktion von den folgenden Technologien unterstützt.

Technologie Unterstützt
Server Message Block (SMB) 3.0-Protokoll Ja
SMB 3.0 Transparent Failover (TFO) Ja
SMB 3.0 mit Dateifreigaben für horizontales Skalieren (SO) Ja
Freigegebenes Clustervolume-Dateisystem (CsvFS) Ja
Robustes Dateisystem (Resilient File System, ReFS) Ja
 

Hinweis

Der winbase.h-Header definiert GetBinaryType als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit Code, der nicht Codierungsneutral ist, kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winbase.h (Windows.h einschließen)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

Dateiverwaltungsfunktionen

SHGetFileInfo

Symbolische Links