Hvis du ikke vil bruke API-funksjoner, kan du bruke Words objektbibliotek til å lese og skrive private profilstrenger.
Words System.PrivateProfileString kan lese fra og skrive til både INI-filer og registeret.
I andre applikasjoner enn Word må du legge til en referanse til Words objektbibliotek.
Du kan legge til referansen ved å åpne Visual Basic Editor (VBE) og aktivere VB -prosjektet. Deretter velger du Verktøy, referanser … og merker av for alternativet Microsoft Word x.x objektbibliotek.
Skriv informasjon til INI-filer
Med makroen nedenfor kan du lagre informasjon i en tekstfil:
Function 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 'create the Word application object On Error Resume Next wd.System. PrivateProfileString (FileName, Section, Key) = CStr (KeyValue) On Error GoTo 0 Set wd = Nothing 'ødelegge Word -applikasjonsobjektet SetIniSetting = True End -funksjon
Bruk makroen som denne for å lagre verdien 100 i filen C: \ FolderName \ FileName.ini i delen
MySectionName for nøkkelen TestValue:
MyBooleanVar = SetIniSetting ("C: \ FolderName \ FileName.ini", "MySectionName", "TestValue", 100)
Tekstfilen vil se slik ut:
[MySectionName]
TestValue = 100
Les informasjon fra INI-filer
Med makroen nedenfor kan du lese informasjon fra en tekstfil:
Funksjon GetIniSetting (Filnavn som streng, seksjon som streng, _ nøkkel som streng) Som streng Dim wd Som Word.Application GetIniSetting = "" Set wd = New Word.Application 'opprett Word -applikasjonsobjektet Ved feil gjenoppta neste GetIniSetting = wd.System .PrivateProfileString (filnavn, seksjon, nøkkel) på feil GoTo 0 Set wd = Nothing 'ødelegge Word -applikasjonsobjektet Sluttfunksjon
Bruk makroen som denne for å returnere verdien for nøkkelen TestValue i delen MySectionName
fra filen C: \ FolderName \ FileName.ini:
MyStringVar = GetIniSetting ("C: \ FolderName \ FileName.ini", _ "MySectionName", "TestValue")
Skriv informasjon til registeret
Med makroen nedenfor kan du lagre informasjon i registret:
Function SetRegistrySetting (Section As String, _ Key As String, KeyValue) As Boolean Dim wd As Word.Application SetRegistrySetting = False Set wd = New Word.Application 'create the Word application object On Error Resume Next wd.System.PrivateProfileString ("" , Seksjon, nøkkel) = CStr (KeyValue) på feil GoTo 0 Set wd = Nothing 'ødelegge Word -applikasjonsobjektet SetRegistrySetting = True End -funksjon
Bruk makroen som denne for å lagre en ny verdi i HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ 8.0 \ Excel \ Microsoft
Excel for nøkkelen DefaultPath:
MyStringVar = "HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ 8.0 \ Excel \ Microsoft Excel" MyBooleanVar = SetRegistrySetting (MyStringVar, _ "DefaultPath", "C: \ FolderName")
Les informasjon fra registret Med makroen nedenfor kan du lese informasjon fra registeret:
Funksjon GetRegistrySetting (seksjon som streng, nøkkel som streng) Som streng Dim wd Som Word.Application GetRegistrySetting = "" Sett wd = New Word.Application 'opprett Word -applikasjonsobjektet Ved feiloppstart Neste GetRegistrySetting = wd.System.PrivateProfileString ("" , Seksjon, nøkkel) Ved feil GoTo 0 Set wd = Nothing 'ødelegge Word -applikasjonsobjektet End Function
Bruk makroen som denne for å lese verdien fra nøkkelen DefaultPath
fra HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ 8.0 \ Excel \ Microsoft Excel:
MyStringVar = "HKEY_CURRENT_USER \ Software \ Microsoft \ Office \ 8.0 \ Excel \ Microsoft Excel" MyStringVar = SetRegistrySetting (MyStringVar, _ "DefaultPath")