Condividi tramite


Funzione GetBinaryTypeW (winbase.h)

Determina se un file è un file eseguibile (.exe) e, in tal caso, quale sottosistema esegue il file eseguibile.

Sintassi

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

Parametri

[in] lpApplicationName

Percorso completo del file il cui tipo eseguibile deve essere determinato.

Per impostazione predefinita, il nome è limitato a MAX_PATH caratteri. Per estendere questo limite a 32.767 caratteri wide, prependo "\\?\" al percorso. Per altre informazioni, vedere Denominazione di file, percorsi e spazi dei nomi.

Suggerimento

A partire da Windows 10, versione 1607, è possibile scegliere di rimuovere la limitazione MAX_PATH senza pre sospeso "\\?\". Per informazioni dettagliate, vedere la sezione "Limitazione massima lunghezza percorso" di nomi, nomi, percorsi e spazi dei nomi .

[out] lpBinaryType

Puntatore a una variabile per ricevere informazioni sul tipo eseguibile del file specificato da lpApplicationName. Le costanti seguenti sono definite.

Valore Significato
SCS_32BIT_BINARY
0
Applicazione basata su Windows a 32 bit
SCS_64BIT_BINARY
6
Applicazione basata su Windows a 64 bit.
SCS_DOS_BINARY
1
Applicazione basata su MS-DOS
SCS_OS216_BINARY
5
Applicazione basata su sistema operativo/2 a 16 bit
SCS_PIF_BINARY
3
File PIF che esegue un'applicazione basata su MS-DOS
SCS_POSIX_BINARY
4
Applicazione basata su POSIX
SCS_WOW_BINARY
2
Applicazione basata su Windows a 16 bit

Valore restituito

Se il file è eseguibile, il valore restituito è diverso da zero. La funzione imposta la variabile puntata da lpBinaryType per indicare il tipo eseguibile del file.

Se il file non è eseguibile o se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError. Se il file è una DLL, l'ultimo codice di errore è ERROR_BAD_EXE_FORMAT.

Commenti

In alternativa, è possibile ottenere le stesse informazioni chiamando la funzione SHGetFileInfo , passando il flag SHGFI_EXETYPE nel parametro uFlags .

Comportamento di collegamento simbolico: se il percorso punta a un collegamento simbolico, viene usato il file di destinazione.

In Windows 8 e Windows Server 2012 questa funzione è supportata dalle tecnologie seguenti.

Tecnologia Supportato
Protocollo SMB (Server Message Block) 3.0
Failover trasparente SMB 3.0 (TFO)
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO)
File system del volume condiviso del cluster (CsvFS)
File system resiliente (ReFS)
 

Nota

L'intestazione winbase.h definisce GetBinaryType come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winbase.h (include Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

Funzioni di gestione file

SHGetFileInfo

Collegamenti simbolici