Fungsi FindExecutableW (shellapi.h)
Mengambil nama dan handel ke file yang dapat dieksekusi (.exe) yang terkait dengan file dokumen tertentu.
Sintaks
HINSTANCE FindExecutableW(
[in] LPCWSTR lpFile,
[in, optional] LPCWSTR lpDirectory,
[out] LPWSTR lpResult
);
Parameter
[in] lpFile
Jenis: LPCTSTR
Alamat string yang dihentikan null yang menentukan nama file. File ini harus berupa dokumen.
[in, optional] lpDirectory
Jenis: LPCTSTR
Alamat string yang dihentikan null yang menentukan direktori default. Nilai ini bisa NULL.
[out] lpResult
Jenis: LPTSTR
Alamat buffer yang menerima nama file dari file yang dapat dieksekusi terkait. Nama file ini adalah string yang dihentikan null yang menentukan file yang dapat dieksekusi dimulai ketika "buka" oleh asosiasi dijalankan pada file yang ditentukan dalam parameter lpFile . Sederhananya, ini adalah aplikasi yang diluncurkan ketika file dokumen langsung diklik dua kali atau ketika Buka dipilih dari menu pintasan file. Parameter ini harus berisi nilai non-null yang valid dan diasumsikan memiliki panjang MAX_PATH. Tanggung jawab untuk memvalidasi nilai diserahkan kepada programmer.
Nilai kembali
Jenis: HINSTANCE
Mengembalikan nilai yang lebih besar dari 32 jika berhasil, atau nilai yang kurang dari atau sama dengan 32 yang mewakili kesalahan.
Tabel berikut ini mencantumkan kemungkinan nilai kesalahan.
Mengembalikan kode/nilai | Deskripsi |
---|---|
|
File yang ditentukan tidak ditemukan. |
|
Jalur yang ditentukan tidak valid. |
|
File yang ditentukan tidak dapat diakses. |
|
Sistem kehabisan memori atau sumber daya. |
|
Tidak ada asosiasi untuk tipe file yang ditentukan dengan file yang dapat dieksekusi. |
Keterangan
Gunakan FindExecutable untuk dokumen. Jika Anda ingin mengambil jalur file yang dapat dieksekusi, gunakan yang berikut ini:
AssocQueryString(ASSOCF_OPEN_BYEXENAME,
ASSOCSTR_EXECUTABLE,
pszExecutableName,
NULL,
pszPath,
pcchOut);
Di sini, pszExecutableName adalah penunjuk ke string null-terminated yang menentukan nama file yang dapat dieksekusi, pszPath adalah penunjuk ke buffer string null-terminated yang menerima jalur ke file yang dapat dieksekusi, dan pcchOut adalah penunjuk ke DWORD yang menentukan jumlah karakter dalam buffer pszPath . Ketika fungsi kembali, pcchOut diatur ke jumlah karakter yang benar-benar ditempatkan di buffer. Lihat AssocQueryString untuk informasi selengkapnya.
Ketika FindExecutable kembali, parameter lpResult mungkin berisi jalur ke server Dynamic Data Exchange (DDE) dimulai jika server tidak merespons permintaan untuk memulai percakapan DDE dengan aplikasi klien DDE.
Catatan
Header shellapi.h mendefinisikan FindExecutable 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
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | shellapi.h |
Pustaka | Shell32.lib |
DLL | Shell32.dll |