Fungsi SQLRemoveDriver
Kesesuaian
Versi diperkenalkan: ODBC 3.0
Ringkasan
SQLRemoveDriver mengubah atau menghapus informasi tentang driver dari entri Odbcinst.ini dalam informasi sistem.
Sintaks
BOOL SQLRemoveDriver(
LPCSTR lpszDriver,
BOOL fRemoveDSN,
LPDWORD lpdwUsageCount);
Argumen
lpszDriver
[Input] Nama driver sebagaimana terdaftar dalam kunci Odbcinst.ini dari informasi sistem.
fRemoveDSN
[Input] Nilai yang valid adalah:
TRUE: Hapus DSN yang terkait dengan driver yang ditentukan dalam lpszDriver. FALSE: Jangan hapus DSN yang terkait dengan driver yang ditentukan dalam lpszDriver.
lpdwUsageCount
[Output] Jumlah penggunaan driver setelah fungsi ini dipanggil.
Kembali
Fungsi mengembalikan TRUE jika berhasil, FALSE jika gagal. Jika tidak ada entri dalam informasi sistem ketika fungsi ini dipanggil, fungsi mengembalikan FALSE.
Diagnostik
Saat SQLRemoveDriver mengembalikan FALSE, nilai *pfErrorCode terkait dapat diperoleh dengan memanggil SQLInstallerError. Tabel berikut mencantumkan nilai *pfErrorCode yang dapat dikembalikan oleh SQLInstallerError dan menjelaskan masing-masing nilai dalam konteks fungsi ini.
*pfErrorCode | Kesalahan | Deskripsi |
---|---|---|
ODBC_ERROR_GENERAL_ERR | Kesalahan penginstal umum | Terjadi kesalahan karena tidak ada kesalahan penginstal tertentu. |
ODBC_ERROR_COMPONENT_NOT_FOUND | Komponen tidak ditemukan dalam registri | Alat penginstal tidak dapat menghapus informasi pengandar karena tidak ada di registri atau tidak dapat ditemukan dalam registri. |
ODBC_ERROR_INVALID_NAME | Nama pengandar atau penerjemah tidak valid | Argumen lpszDriver tidak valid. |
ODBC_ERROR_USAGE_UPDATE_FAILED | Tidak dapat menaikkan atau mengurangi jumlah penggunaan komponen | Alat penginstal gagal mengurangi jumlah penggunaan driver. |
ODBC_ERROR_REQUEST_FAILED | Permintaan gagal | Argumen fRemoveDSN adalah TRUE; namun, satu atau beberapa DSN tidak dapat dihapus. Panggilan ke SQLConfigDriver dengan permintaan ODBC_REMOVE_DRIVER gagal. |
ODBC_ERROR_OUT_OF_MEM | Kehabisan memori | Alat penginstal tidak dapat melakukan fungsi karena kurangnya memori. |
Komentar
SQLRemoveDriver melengkapi fungsi SQLInstallDriverEx dan memperbarui jumlah penggunaan komponen dalam informasi sistem. Fungsi ini harus dipanggil hanya dari aplikasi penyiapan.
SQLRemoveDriver akan mengurangi nilai jumlah penggunaan komponen sebesar 1. Jika jumlah penggunaan komponen masuk ke 0, hal berikut akan terjadi:
Fungsi SQLConfigDriver dengan opsi ODBC_REMOVE_DRIVER akan dipanggil. Jika opsi fRemoveDSN diatur ke TRUE, fungsi ConfigDSN memanggil SQLRemoveDSNFromIni untuk menghapus semua sumber data yang terkait dengan driver yang ditentukan di lpszDriver.Jika opsi fRemoveDSN diatur ke FALSE, sumber data tidak akan dihapus.
Entri driver dalam informasi sistem akan dihapus. Entri driver berada di lokasi informasi sistem berikut, di bawah nama driver:
HKEY_LOCAL_MACHINE
SOFTWARE
ODBC
Odbcinst.ini
SQLRemoveDriver tidak benar-benar menghapus file apa pun. Program panggilan bertanggung jawab untuk menghapus file dan mempertahankan jumlah penggunaan file. Hanya setelah jumlah penggunaan komponen dan jumlah penggunaan file mencapai nol adalah file yang dihapus secara fisik. Beberapa file dalam komponen dapat dihapus, dan yang lain tidak dihapus, tergantung pada apakah file digunakan oleh aplikasi lain yang telah meningkatkan jumlah penggunaan file.
SQLRemoveDriver juga disebut sebagai bagian dari proses pemutakhiran. Jika aplikasi mendeteksi bahwa aplikasi harus melakukan peningkatan dan sebelumnya telah menginstal driver, driver harus dihapus dan kemudian diinstal ulang. SQLRemoveDriver harus terlebih dahulu dipanggil untuk mengurangi jumlah penggunaan komponen, lalu SQLInstallDriverEx harus dipanggil untuk menaikkan jumlah penggunaan komponen. Program penyetelan aplikasi harus mengganti file lama dengan file baru. Jumlah penggunaan file akan tetap sama, dan aplikasi lain yang menggunakan file versi yang lebih lama sekarang akan menggunakan versi yang lebih baru.
Fungsi Terkait
Untuk informasi tentang | Lihat |
---|---|
Menambahkan, memodifikasi, atau menghapus driver | ConfigDriver (di DLL Penyiapan) |
Menambahkan, memodifikasi, atau menghapus driver | SQLConfigDriver |
Menginstal driver | SQLInstallDriverEx |
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk