Fungsi NetFileEnum (lmshare.h)
Mengembalikan informasi tentang beberapa atau semua file yang terbuka di server, tergantung pada parameter yang ditentukan.
Sintaks
NET_API_STATUS NET_API_FUNCTION NetFileEnum(
[in] LMSTR servername,
[in] LMSTR basepath,
[in] LMSTR username,
[in] DWORD level,
[out] LPBYTE *bufptr,
[in] DWORD prefmaxlen,
[out] LPDWORD entriesread,
[out] LPDWORD totalentries,
[in, out] PDWORD_PTR resume_handle
);
Parameter
[in] servername
Penunjuk ke string yang menentukan nama DNS atau NetBIOS dari server jarak jauh tempat fungsi dijalankan. Jika parameter ini NULL, komputer lokal akan digunakan.
String ini adalah Unicode jika _WIN32_WINNT atau FORCE_UNICODE ditentukan.
[in] basepath
Penunjuk ke string yang menentukan kualifikasi untuk informasi yang dikembalikan. Jika parameter ini NULL, semua sumber daya terbuka dijumlahkan. Jika parameter ini bukan NULL, fungsi hanya menghitung sumber daya yang memiliki nilai parameter basepath sebagai awalan. (Awalan adalah bagian dari jalur yang datang sebelum garis miring terbalik.)
String ini adalah Unicode jika _WIN32_WINNT atau FORCE_UNICODE ditentukan.
[in] username
Penunjuk ke string yang menentukan nama pengguna atau nama koneksi. Jika string dimulai dengan dua garis miring terbelakang ("\"), maka itu menunjukkan nama koneksi, misalnya, "\127.0.0.1" atau "\ClientName". Bagian dari nama koneksi setelah garis miring terbalik sama dengan nama klien dalam struktur informasi sesi yang dikembalikan oleh fungsi NetSessionEnum . Jika string tidak dimulai dengan dua garis miring terbelakang, maka string menunjukkan nama pengguna. Jika parameter ini bukan NULL, nilainya berfungsi sebagai kualifikasi untuk enumerasi. File yang dikembalikan terbatas pada file yang memiliki nama pengguna atau nama koneksi yang cocok dengan kualifikasi. Jika parameter ini NULL, tidak ada kualifikasi nama pengguna yang digunakan.
Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Parameter ini adalah penunjuk ke string yang menentukan nama pengguna. Jika parameter ini bukan NULL, nilainya berfungsi sebagai kualifikasi untuk enumerasi. File yang dikembalikan terbatas pada file yang memiliki nama pengguna yang cocok dengan kualifikasi. Jika parameter ini NULL, tidak ada kualifikasi nama pengguna yang digunakan.
String ini adalah Unicode jika _WIN32_WINNT atau FORCE_UNICODE ditentukan.
[in] level
Menentukan tingkat informasi data. Parameter ini bisa menjadi salah satu nilai berikut.
Nilai | Makna |
---|---|
|
Mengembalikan nomor identifikasi file. Parameter bufptr menunjuk ke array struktur FILE_INFO_2 . |
|
Mengembalikan informasi tentang file. Parameter bufptr menunjuk ke array struktur FILE_INFO_3 . |
[out] bufptr
Arahkan ke alamat buffer yang menerima informasi. Format data ini tergantung pada nilai parameter tingkat .
Buffer ini dialokasikan oleh sistem dan harus dikosongkan menggunakan fungsi NetApiBufferFree . Perhatikan bahwa Anda harus membebaskan buffer meskipun fungsi gagal dengan ERROR_MORE_DATA.
[in] prefmaxlen
Menentukan panjang maksimum data yang dikembalikan, dalam byte. Jika Anda menentukan MAX_PREFERRED_LENGTH, fungsi mengalokasikan jumlah memori yang diperlukan untuk data. Jika Anda menentukan nilai lain dalam parameter ini, nilai tersebut dapat membatasi jumlah byte yang dikembalikan fungsi. Jika ukuran buffer tidak cukup untuk menahan semua entri, fungsi akan mengembalikan ERROR_MORE_DATA. Untuk informasi selengkapnya, lihat Buffer Fungsi Manajemen Jaringan dan Panjang Buffer Fungsi Manajemen Jaringan.
[out] entriesread
Pointer ke nilai yang menerima hitungan elemen yang benar-benar dijumlahkan.
[out] totalentries
Penunjuk ke nilai yang menerima jumlah total entri yang bisa dijumlahkan dari posisi resume saat ini. Perhatikan bahwa aplikasi harus mempertimbangkan nilai ini hanya sebagai petunjuk.
[in, out] resume_handle
Penunjuk ke nilai yang berisi handel resume yang digunakan untuk melanjutkan pencarian file yang ada. Handel harus nol pada panggilan pertama dan dibiarkan tidak berubah untuk panggilan berikutnya. Jika parameter ini NULL, tidak ada handel resume yang disimpan.
Nilai kembali
Jika fungsi berhasil, nilai yang dikembalikan adalah NERR_Success.
Jika fungsi gagal, nilai yang dikembalikan bisa menjadi salah satu kode kesalahan berikut.
Menampilkan kode | Deskripsi |
---|---|
|
Pengguna tidak memiliki akses ke informasi yang diminta. |
|
Nilai yang ditentukan untuk parameter tingkat tidak valid. |
|
Entri lainnya tersedia. Tentukan buffer yang cukup besar untuk menerima semua entri. |
|
Memori tidak cukup tersedia. |
|
Buffer yang disediakan terlalu kecil. |
Keterangan
Hanya anggota grup lokal Administrator atau Operator Server yang berhasil menjalankan fungsi NetFileEnum .
Anda dapat memanggil fungsi NetFileGetInfo untuk mengambil informasi tentang pembukaan sumber daya server tertentu.
Jika Anda memprogram Direktori Aktif, Anda mungkin dapat memanggil metode Antarmuka Layanan Direktori Aktif (ADSI) tertentu untuk mencapai fungsionalitas yang sama yang dapat Anda capai dengan memanggil NetFileEnum. Untuk informasi selengkapnya, lihat IADsResource dan IADsFileServiceOperations.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | lmshare.h (termasuk Lm.h) |
Pustaka | Netapi32.lib |
DLL | Netapi32.dll |