API işlevlerini kullanmak istemiyorsanız, Özel Profil Dizelerini okumak ve yazmak için Words nesne kitaplığını kullanabilirsiniz.
Words System.PrivateProfileString hem INI dosyalarından hem de Kayıt Defterinden okuyabilir ve bunlara yazabilir.
Word dışındaki uygulamalarda, Words nesne kitaplığına bir başvuru eklemeniz gerekir.
Referansı Visual Basic Düzenleyiciyi (VBE) açarak ekleyebilir ve VB Projenizi aktif hale getirebilirsiniz. Ardından Araçlar, Referanslar…'ı seçin ve Microsoft Word x.x Nesne Kitaplığı seçeneğini işaretleyin.
INI dosyalarına bilgi yazın
Aşağıdaki makro ile bilgileri bir metin dosyasına kaydedebilirsiniz:
Fonksiyon SetIniSetting(FileName As String, Section As String, _ Key As String, KeyValue) As Boolean Dim wd As Word.Application SetIniSetting = False Set wd = New Word.Application ' Word uygulama nesnesini On Error Resume On Error Next wd.System. PrivateProfileString(FileName, Section, Key) = CStr(KeyValue) Hatasında GoTo 0 Set wd = Nothing ' Word uygulama nesnesini yok et SetIniSetting = True End Function
Bölümdeki C:\FolderName\FileName.ini dosyasındaki 100 değerini kaydetmek için makroyu bu şekilde kullanın.
TestValue anahtarı için MySectionName:
MyBooleanVar = SetIniSetting("C:\KlasörAdı\DosyaAdı.ini", "BölümAdım", "TestValue", 100)
Metin dosyası şöyle görünecektir:
[BölümümAdım]
TestDeğeri=100
INI dosyalarından bilgileri okuyun
Aşağıdaki makro ile bir metin dosyasından bilgi okuyabilirsiniz:
İşlev GetIniSetting(DosyaAdı Dize, Bölüm As Dize, _ Anahtar As Dize) As Dize Dim wd As Word.Application GetIniSetting = "" Set wd = New Word.Application ' Word uygulama nesnesini oluşturun Hatada Devam Et Sonraki GetIniSetting = wd.System .PrivateProfileString(DosyaAdı, Bölüm, Anahtar) Hatasında GoTo 0 Set wd = Hiçbir şey ' Word uygulama nesnesini yok eder End Function
MySectionName bölümünde TestValue anahtarının değerini döndürmek için makroyu bu şekilde kullanın.
C:\FolderName\FileName.ini dosyasından:
MyStringVar = GetIniSetting("C:\FolderName\FileName.ini", _ "MySectionName", "TestValue")
Kayıt defterine bilgi yazın
Aşağıdaki makro ile Kayıt Defterine bilgi kaydedebilirsiniz:
Fonksiyon SetRegistrySetting(Section As String, _ Key As String, KeyValue) As Boolean Dim wd As Word.Application SetRegistrySetting = False Set wd = New Word.Application ' Word uygulama nesnesini oluşturun Hata Devam Etme Sırasında Sonraki wd.System.PrivateProfileString("" , Section, Key) = CStr(KeyValue) On Error GoTo 0 Set wd = Nothing ' Word uygulama nesnesini yok etme SetRegistrySetting = True End Function
HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft içine yeni bir değer kaydetmek için makroyu bu şekilde kullanın
DefaultPath anahtarı için Excel:
MyStringVar = "HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft Excel" MyBooleanVar = SetRegistrySetting(MyStringVar, _ "DefaultPath", "C:\FolderName")
Kayıt Defterinden Bilgi Okuyun Aşağıdaki makro ile Kayıt Defterinden bilgi okuyabilirsiniz:
İşlev GetRegistrySetting(Section As String, Key As String) As String Dim wd As Word.Application GetRegistrySetting = "" Set wd = New Word.Application ' Word uygulama nesnesini oluşturun Hatada Devam Et Sonraki GetRegistrySetting = wd.System.PrivateProfileString("" , Bölüm, Anahtar) Hatada GoTo 0 Set wd = Nothing ' Word uygulama nesnesini yok et Fonksiyonu Bitir
DefaultPath anahtarındaki değeri okumak için makroyu bu şekilde kullanın.
HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft Excel'den:
MyStringVar = "HKEY_CURRENT_USER\Software\Microsoft\Office\8.0\Excel\Microsoft Excel" MyStringVar = SetRegistrySetting(MyStringVar, _ "DefaultPath")