Bagikan melalui


Fungsi GetOpenFileNameA (commdlg.h)

[Dimulai dengan Windows Vista, kotak dialog Buka dan Simpan Sebagai umum telah digantikan oleh Dialog Item Umum. Kami menyarankan agar Anda menggunakan API Dialog Item Umum alih-alih kotak dialog ini dari Pustaka Kotak Dialog Umum.]

Membuat kotak dialog Buka yang memungkinkan pengguna menentukan drive, direktori, dan nama file atau kumpulan file yang akan dibuka.

Sintaks

BOOL GetOpenFileNameA(
  [in, out] LPOPENFILENAMEA unnamedParam1
);

Parameter

[in, out] unnamedParam1

Jenis: LPOPENFILENAME

Penunjuk ke struktur OPENFILENAME yang berisi informasi yang digunakan untuk menginisialisasi kotak dialog. Saat GetOpenFileName kembali, struktur ini berisi informasi tentang pilihan file pengguna.

Menampilkan nilai

Jenis: BOOL

Jika pengguna menentukan nama file dan mengklik tombol OK , nilai yang dikembalikan bukan nol. Buffer yang ditujukkan oleh anggota lpstrFile dari struktur OPENFILENAME berisi jalur lengkap dan nama file yang ditentukan oleh pengguna.

Jika pengguna membatalkan atau menutup kotak dialog Buka atau terjadi kesalahan, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, panggil fungsi CommDlgExtendedError , yang dapat mengembalikan salah satu nilai berikut.

Keterangan

Kotak dialog Buka gaya Penjelajah menyediakan fitur antarmuka pengguna yang mirip dengan Windows Explorer. Anda dapat menyediakan prosedur hook OFNHookProc untuk kotak dialog Buka Gaya Penjelajah. Untuk mengaktifkan prosedur kait, atur bendera OFN_EXPLORER dan OFN_ENABLEHOOK di anggota Bendera struktur OPENFILENAME dan tentukan alamat prosedur kait di anggota lpfnHook .

Windows terus mendukung kotak dialog Buka gaya lama untuk aplikasi yang ingin mempertahankan antarmuka pengguna yang konsisten dengan antarmuka pengguna gaya lama. Untuk menampilkan kotak dialog Buka gaya lama, aktifkan prosedur kait OFNHookProcOldStyle dan pastikan bahwa bendera OFN_EXPLORER tidak diatur.

Untuk menampilkan kotak dialog yang memungkinkan pengguna memilih direktori alih-alih file, panggil fungsi SHBrowseForFolder .

Catatan, saat memilih beberapa file, batas karakter total untuk nama file bergantung pada versi fungsi.

  • ANSI: Batas 32k
  • Unicode: tidak ada batasan

Contoh

Misalnya, lihat Membuka File.

Catatan

Header commdlg.h mendefinisikan GetOpenFileName 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

Persyaratan Nilai
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header commdlg.h (sertakan Windows.h)
Pustaka Comdlg32.lib
DLL Comdlg32.dll
Set API ext-ms-win-shell-comdlg32-l1-1-1 (diperkenalkan dalam Windows 10, versi 10.0.14393)

Lihat juga

CommDlgExtendedError

Pustaka Kotak Dialog Umum

Konseptual

GetSaveFileName

OFNHookProc

OFNHookProcOldStyle

OPENFILENAME

Sumber Daya Lain

Referensi

SHBrowseForFolder