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.
[Microsoft sangat merekomendasikan pengembang menggunakan sarana alternatif untuk mencapai kebutuhan aplikasi Anda. Banyak skenario yang dikembangkan TxF dapat dicapai melalui teknik yang lebih sederhana dan lebih tersedia. Selain itu, TxF mungkin tidak tersedia di versi Microsoft Windows yang akan datang. Untuk informasi lebih lanjut, dan alternatif TxF, silakan lihat Alternatif untuk menggunakanNTFS Transaksi.]
Mengambil jalur lengkap dan nama file dari file yang ditentukan sebagai operasi yang ditransaksikan.
Untuk melakukan operasi ini tanpa transaksi, gunakan fungsi GetFullPathName
Untuk informasi selengkapnya tentang nama file dan jalur, lihat Nama File, Jalur, dan Namespace.
Sintaksis
DWORD GetFullPathNameTransactedA(
[in] LPCSTR lpFileName,
[in] DWORD nBufferLength,
[out] LPSTR lpBuffer,
[out] LPSTR *lpFilePart,
[in] HANDLE hTransaction
);
Parameter
[in] lpFileName
Nama file.
String ini dapat menggunakan nama file pendek (formulir 8.3) atau panjang. String ini dapat berupa nama berbagi atau volume.
File harus berada di komputer lokal; jika tidak, fungsi gagal dan kode kesalahan terakhir diatur ke ERROR_TRANSACTIONS_UNSUPPORTED_REMOTE.
[in] nBufferLength
Ukuran buffer untuk menerima string yang dihentikan null untuk drive dan jalur, dalam TCHAR.
[out] lpBuffer
Penunjuk ke buffer yang menerima string null-terminated untuk drive dan jalur.
[out] lpFilePart
Penunjuk ke buffer yang menerima alamat (dalam lpBuffer) dari komponen nama file akhir di jalur. Tentukan NULL
Jika lpBuffer menunjuk ke direktori dan bukan file, lpFilePart menerima 0 (nol).
[in] hTransaction
Handel ke transaksi. Handel ini dikembalikan oleh fungsi
Mengembalikan nilai
Jika fungsi berhasil, nilai pengembalian adalah panjangnya, dalam TCHAR, dari string yang disalin ke lpBuffer, tidak termasuk karakter null yang mengakhiri.
Jika buffer lpBuffer
Jika fungsi gagal karena alasan lain, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError.
Komentar
GetFullPathNameTransacted menggabungkan nama drive dan direktori saat ini dengan nama file tertentu untuk menentukan jalur lengkap dan nama file dari file tertentu. Ini juga menghitung alamat bagian nama file dari jalur lengkap dan nama file. Fungsi ini tidak memverifikasi bahwa jalur yang dihasilkan dan nama file valid, atau bahwa mereka melihat file yang ada pada volume terkait.
Nama berbagi dan volume adalah input yang valid untuk lpFileName. Misalnya, daftar identitas berikut jalur dan nama file yang dikembalikan jika test-2 adalah komputer jarak jauh dan U: adalah drive yang dipetakan jaringan:
- Jika Anda menentukan "\\test-2\q$\lh" jalur yang dikembalikan adalah "\\test-2\q$\lh"
- Jika Anda menentukan "\\?\UNC\test-2\q$\lh" jalur yang dikembalikan adalah "\\?\UNC\test-2\q$\lh"
- Jika Anda menentukan "U:" jalur yang dikembalikan adalah "U:\"
Jika nilai pengembalian lebih besar dari nilai yang ditentukan dalam nBufferLength, Anda dapat memanggil fungsi lagi dengan buffer yang cukup besar untuk menahan jalur. Untuk contoh kasus ini serta menggunakan buffer panjang nol untuk alokasi dinamis, lihat bagian Kode Contoh.
Teknologi | Didukung |
---|---|
Protokol Server Message Block (SMB) 3.0 | Tidak |
Failover Transparan (TFO) SMB 3.0 | Tidak |
SMB 3.0 dengan Scale-out File Shares (SO) | Tidak |
Sistem File Volume Bersama Kluster (CsvFS) | Tidak |
Sistem File Tangguh (ReFS) | Tidak |
SMB 3.0 tidak mendukung TxF.
Nota
Header winbase.h mendefinisikan GetFullPathNameTransacted sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta preprosedur 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 Vista [hanya aplikasi desktop] |
server minimum yang didukung |
Windows Server 2008 [hanya aplikasi desktop] |
Platform Target |
Windows |
Header |
winbase.h (termasuk Windows.h) |
Pustaka |
Kernel32.lib |
DLL |
Kernel32.dll |
Lihat juga
GetTempPath