Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Melakukan operasi pada file tertentu.
Sintaksis
BOOL ShellExecuteExA(
[in, out] SHELLEXECUTEINFOA *pExecInfo
);
Parameter
[in, out] pExecInfo
Jenis: SHELLEXECUTEINFO*
Pointer ke struktur SHELLEXECUTEINFO yang berisi dan menerima informasi tentang aplikasi yang sedang dijalankan.
Mengembalikan nilai
Jenis: BOOL
Mengembalikan TRUE jika berhasil; jika tidak, FALSE. Panggil GetLastError untuk informasi kesalahan yang diperluas.
Komentar
Karena ShellExecuteEx dapat mendelegasikan eksekusi ke ekstensi Shell (sumber data, penangan menu konteks, implementasi kata kerja) yang diaktifkan menggunakan Model Objek Komponen (COM), COM harus diinisialisasi sebelum ShellExecuteEx dipanggil. Beberapa ekstensi Shell memerlukan jenis com single-threaded apartment (STA). Dalam hal ini, COM harus diinisialisasi seperti yang ditunjukkan di sini:
CoInitializeEx(NULL, COINIT_APARTMENTTHREADED | COINIT_DISABLE_OLE1DDE)
Ada instans di mana ShellExecuteEx tidak menggunakan salah satu jenis ekstensi Shell ini dan instans tersebut tidak akan mengharuskan COM untuk diinisialisasi sama sekali. Meskipun demikian, ada baiknya untuk selalu menginisialisasi COM sebelum menggunakan fungsi ini.
Ketika DLL dimuat ke dalam proses Anda, Anda memperoleh kunci yang dikenal sebagai kunci pemuat . Fungsi
Dengan beberapa monitor, jika Anda menentukan
Jika fungsi berhasil, fungsi ini mengatur
Nilai kesalahan SE_ERR_XXX disediakan untuk kompatibilitas dengan ShellExecute. Untuk mengambil informasi kesalahan yang lebih akurat, gunakan GetLastError. Ini dapat mengembalikan salah satu nilai berikut.
| Kesalahan | Deskripsi |
|---|---|
| ERROR_FILE_NOT_FOUND | File yang ditentukan tidak ditemukan. |
| ERROR_PATH_NOT_FOUND | Jalur yang ditentukan tidak ditemukan. |
| ERROR_DDE_FAIL | Transaksi Dynamic Data Exchange (DDE) gagal. |
| ERROR_NO_ASSOCIATION | Tidak ada aplikasi yang terkait dengan ekstensi nama file yang ditentukan. |
| ERROR_ACCESS_DENIED | Akses ke file yang ditentukan ditolak. |
| ERROR_DLL_NOT_FOUND | Salah satu file pustaka yang diperlukan untuk menjalankan aplikasi tidak dapat ditemukan. |
| ERROR_CANCELLED | Fungsi ini meminta informasi tambahan kepada pengguna, tetapi pengguna membatalkan permintaan. |
| ERROR_NOT_ENOUGH_MEMORY | Memori tidak cukup untuk melakukan tindakan yang ditentukan. |
| ERROR_SHARING_VIOLATION | Terjadi pelanggaran berbagi. |
Membuka item dari URL Anda dapat mendaftarkan aplikasi Anda untuk diaktifkan saat URL yang diteruskan. Anda juga dapat menentukan protokol mana yang didukung aplikasi Anda. Lihat Pendaftaran Aplikasi
Nota
Header shellapi.h mendefinisikan ShellExecuteEx sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosesor 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
| Syarat | Nilai |
|---|---|
| klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
| server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
| Platform Target |
Windows |
| Header |
shellapi.h |
| Pustaka |
Shell32.lib |
| DLL |
Shell32.dll (versi 3.51 atau yang lebih baru) |
Lihat juga
Meluncurkan Aplikasi (ShellExecute, ShellExecuteEx, SHELLEXECUTEINFO)