Bagikan melalui


Fungsi GetBinaryTypeA (winbase.h)

Menentukan apakah file adalah file yang dapat dieksekusi (.exe), dan jika demikian, subsistem mana yang menjalankan file yang dapat dieksekusi.

Sintaks

BOOL GetBinaryTypeA(
  [in]  LPCSTR  lpApplicationName,
  [out] LPDWORD lpBinaryType
);

Parameter

[in] lpApplicationName

Jalur lengkap file yang jenis yang dapat dieksekusi akan ditentukan.

Secara default, namanya terbatas pada MAX_PATH karakter. Untuk memperpanjang batas ini menjadi 32.767 karakter lebar, tambahkan "\\?\" ke jalur. Untuk informasi selengkapnya, lihat Menamai File, Jalur, dan Namespace.

Tip

Dimulai dengan Windows 10, Versi 1607, Anda dapat memilih untuk menghapus batasan MAX_PATH tanpa menambahkan sebelumnya "\\?\". Lihat bagian "Batasan Panjang Jalur Maksimum" di Penamaan File, Jalur, dan Namespace untuk detailnya.

[out] lpBinaryType

Penunjuk ke variabel untuk menerima informasi tentang jenis file yang dapat dieksekusi yang ditentukan oleh lpApplicationName. Konstanta berikut didefinisikan.

Nilai Makna
SCS_32BIT_BINARY
0
Aplikasi berbasis Windows 32-bit
SCS_64BIT_BINARY
6
Aplikasi berbasis Windows 64-bit.
SCS_DOS_BINARY
1
Aplikasi berbasis MS-DOS
SCS_OS216_BINARY
5
Aplikasi berbasis OS/2 16-bit
SCS_PIF_BINARY
3
File PIF yang menjalankan aplikasi berbasis MS-DOS –
SCS_POSIX_BINARY
4
POSIX – aplikasi berbasis
SCS_WOW_BINARY
2
Aplikasi berbasis Windows 16-bit

Nilai kembali

Jika file dapat dieksekusi, nilai yang dikembalikan bukan nol. Fungsi mengatur variabel yang ditunjukkan oleh lpBinaryType untuk menunjukkan jenis file yang dapat dieksekusi.

Jika file tidak dapat dieksekusi, atau jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError. Jika file adalah DLL, kode kesalahan terakhir adalah ERROR_BAD_EXE_FORMAT.

Keterangan

Sebagai alternatif, Anda dapat memperoleh informasi yang sama dengan memanggil fungsi SHGetFileInfo , meneruskan bendera SHGFI_EXETYPE di parameter uFlags .

Perilaku tautan simbolis—Jika jalur menunjuk ke tautan simbolis, file target akan digunakan.

Di Windows 8 dan Windows Server 2012, fungsi ini didukung oleh teknologi berikut.

Teknologi Didukung
Protokol Server Message Block (SMB) 3.0 Ya
SMB 3.0 Transparent Failover (TFO) Ya
SMB 3.0 dengan Berbagi File Peluasan Skala (SO) Ya
Sistem File Volume Bersama Kluster (CsvFS) Ya
Sistem File Tangguh (ReFS) Ya
 

Catatan

Header winbase.h mendefinisikan GetBinaryType sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta pra-prosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

   
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header winbase.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

Fungsi Manajemen File

SHGetFileInfo

Tautan Simbolis