Četl jsem zde téma o INI a zkoušel jsem úpravy,ale nepomohlo to. Problém je následující ve VB (2005 ale ted jsem to převedl pod VB 2008). Mám nastavený zápis a čtení INI souboru. Při snaze zapsat nebo číst z INI souboru mi hází chybu s přístupem do chráněné pamětí. Nevíte jak se to opravit nebo co by to mohlo způsobit? Na začátku když jsem to začal používat to běhalo bez problému. zde kontroluji hodnoty. pokud nejsou tak je ma načíst z INI
If SERVER1 Is Nothing Or SERVER1 = "" Then
' RtoINIserver(SERVER1, DATABASE1, PREFIX1, UID1, PASS1, names_char1)
Form2.ShowDialog()
End If
zapis a čtení INI mam takto.
Module Module2
Public Declare Function WritePrivateProfileString Lib "kernel32" Alias "WritePrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpString As String, ByVal lpFileName As String) As Long
Public Declare Function GetPrivateProfileString Lib "kernel32" Alias "GetPrivateProfileStringA" (ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpDefault As String, ByVal lpReturnedString As String, ByVal lpFileName As String) As Long
Function WtoINIm()
WritePrivateProfileString("M", "Adresar", "c:\B\", "c:\B\m.ini")
End Function
Function WtoINIserver(ByVal SERVER1, ByVal DATABASE1, ByVal PREFIX1, ByVal UID1, ByVal PASS1, ByVal names_char1)
WritePrivateProfileString("SERVER", "Server1", SERVER1, "c:\B\m.ini")
WritePrivateProfileString("SERVER", "Databaze", DATABASE1, "c:\B\m.ini")
WritePrivateProfileString("SERVER", "Prefix", PREFIX1, "c:\B\m.ini")
WritePrivateProfileString("SERVER", "Jmeno", UID1, "c:\B\m.ini")
WritePrivateProfileString("SERVER", "Heslo", PASS1, "c:\B\m.ini")
WritePrivateProfileString("SERVER", "ZnakSada", names_char1, "c:\B\m.ini")
End Function
Function RtoINIserver(ByVal SERVER1 As String, ByVal DATABASE1 As String, ByVal PREFIX1 As String, ByVal UID1 As String, ByVal PASS1 As String, ByVal names_char1 As String)
GetPrivateProfileString("SERVER", "Server1", "", SERVER1, "c:\B\m.ini")
GetPrivateProfileString("SERVER", "Databaze", "", DATABASE1, "c:\B\m.ini")
GetPrivateProfileString("SERVER", "Prefix", "", PREFIX1, "c:\B\m.ini")
GetPrivateProfileString("SERVER", "Jmeno", "", UID1, "c:\B\m.ini")
GetPrivateProfileString("SERVER", "Heslo", "", PASS1, "c:\B\m.ini")
GetPrivateProfileString("SERVER", "ZnakSada", "", names_char1, "c:\B\m.ini")
End Function
End Module
Kdyby jste mohli poradit jak to udělat, protože mne nic nenapadá proč to hazí takovou chybu.
|