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.
Mengganti konten bagian yang ditentukan dalam file Win.ini dengan kunci dan nilai yang ditentukan. Jika Win.ini menggunakan karakter Unicode, fungsi menulis karakter Unicode ke file. Jika tidak, fungsi menulis karakter ANSI.
Sintaksis
BOOL WriteProfileSectionW(
[in] LPCWSTR lpAppName,
[in] LPCWSTR lpString
);
Parameter
[in] lpAppName
Nama bagian . Nama bagian ini biasanya merupakan nama aplikasi panggilan.
[in] lpString
Nama kunci baru dan nilai terkait yang akan ditulis ke bagian bernama. String ini dibatasi hingga 65.535 byte.
Jika file ada dan dibuat menggunakan karakter Unicode, fungsi menulis karakter Unicode ke file. Jika tidak, fungsi membuat file menggunakan karakter ANSI.
Mengembalikan nilai
Jika fungsi berhasil, nilai yang dikembalikan bukan nol.
Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, panggil GetLastError.
Komentar
Kunci dan nilai dalam buffer lpString
Fungsi
WriteProfileSection menghapus kunci dan nilai yang ada untuk bagian bernama dan menyisipkan nama kunci dan nilai dalam buffer yang ditunjukkan oleh lpString. Fungsi ini tidak mencoba menghubungkan nama kunci lama dan baru; jika nama baru muncul dalam urutan yang berbeda dari nama lama, komentar apa pun yang terkait dengan kunci dan nilai yang sudah ada sebelumnya dalam file inisialisasi mungkin akan dikaitkan dengan kunci dan nilai yang salah.
Operasi ini atom; tidak ada operasi lain yang membaca dari atau menulis ke file inisialisasi yang diizinkan saat informasi sedang ditulis.
Sistem menyimpan versi cache dari pemetaan file registri terbaru untuk meningkatkan performa. Jika semua parameter NULL, fungsi akan menghapus cache. Saat sistem mengedit versi file yang di-cache, proses yang mengedit file itu sendiri akan menggunakan file asli sampai cache dihapus.
Sistem memetakan sebagian besar .ini referensi file ke registri, menggunakan pemetaan yang ditentukan di bawah kunci registri berikut:
HKEY_LOCAL_MACHINE SOFTWARE Microsoft Windows NT CurrentVersion IniFileMapping
Ketika operasi telah dipetakan, fungsi WriteProfileSection menulis informasi ke registri, bukan ke file inisialisasi; perubahan lokasi penyimpanan tidak berpengaruh pada perilaku fungsi.
Fungsi profil menggunakan langkah-langkah berikut untuk menemukan informasi inisialisasi:
- Lihat di registri untuk nama file inisialisasi di bawah kunci
IniFileMapping. - Cari nama bagian yang ditentukan oleh lpAppName. Ini akan menjadi nilai bernama di bawah kunci yang memiliki nama file inisialisasi, atau subkunjuk dengan nama ini, atau nama tidak akan ada sebagai nilai atau subkunjuk.
- Jika nama bagian yang ditentukan oleh lpAppName adalah nilai bernama, maka nilai tersebut menentukan di mana dalam registri Anda akan menemukan kunci untuk bagian tersebut.
- Jika nama bagian yang ditentukan oleh lpAppName adalah subkunci, maka nilai bernama di bawah subkunci tersebut menentukan di mana dalam registri Anda akan menemukan kunci untuk bagian tersebut. Jika kunci yang Anda cari tidak ada sebagai nilai bernama, maka akan ada nilai yang tidak disebutkan namanya (ditampilkan sebagai <Tanpa Nama>) yang menentukan lokasi default di registri tempat Anda akan menemukan kunci.
- Jika nama bagian yang ditentukan oleh lpAppName tidak ada sebagai nilai bernama atau sebagai subkey, maka akan ada nilai yang tidak disebutkan namanya (ditampilkan sebagai <Tanpa Nama>) yang menentukan lokasi default di registri tempat Anda akan menemukan kunci untuk bagian tersebut.
- Jika tidak ada subkuntang atau entri untuk nama bagian, maka cari file inisialisasi aktual pada disk dan baca kontennya.
- ! - karakter ini memaksa semua penulisan untuk masuk ke registri dan ke file .ini pada disk.
- # - karakter ini menyebabkan nilai registri diatur ke nilai dalam file .ini Windows 3.1 saat pengguna baru masuk untuk pertama kalinya setelah penyiapan.
- @ - karakter ini mencegah pembacaan masuk ke file .ini pada disk jika data yang diminta tidak ditemukan di registri.
- USR: - awalan ini adalah singkatan dari HKEY_CURRENT_USER, dan teks setelah awalan relatif terhadap kunci tersebut.
- SYS: - awalan ini adalah singkatan dari HKEY_LOCAL_MACHINE\SOFTWARE, dan teks setelah awalan relatif terhadap kunci tersebut.
Nota
Header winbase.h mendefinisikan WriteProfileSection 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 2000 Professional [hanya aplikasi desktop] |
server minimum yang didukung |
Windows 2000 Server [hanya aplikasi desktop] |
Platform Target |
Windows |
Header |
winbase.h (termasuk Windows.h) |
Pustaka |
Kernel32.lib |
DLL |
Kernel32.dll |
Lihat juga
GetProfileSection