Som vanligt (hevete jla vb)GetPrivateProfileString
Jag har en funktion getSettingF som läser info från en "ini"-fil
När jag kör det från VB-Miljön så hämtas värdet
När jag kompilerar till P-Code så hämtas värdet och det funkar
När jag kompilerar till Native Code så returneras "" (Tomma strängen)
Varför blir det så, tips ideér... Tacksam för svar!
min ini.fil som jag har ser ut så här: (Tagit bort massa rader från den här)
[GENERAL SETTINGS]
LOGLISTSIZE=100
Jag anropar funktionen getSettingF så här:
retVal=getSettingF(App.Path & "\settings.txt", "GENERAL SETTINGS", "LOGLISTSIZE", "100")
Det är så sjukt så det finns inte, inte ens defaultvärdet 100 returneras. Jag brukar använda
denna funktion i massa projekt så jag är van att använda den och är bomsäker på att jag
kodat rätt (eftersom det funkar i miljön).
<code>
Public Declare Function GetPrivateProfileString Lib "kernel32.dll" Alias "GetPrivateProfileStringA" _
(ByVal lpApplicationName As String, ByVal lpKeyName As String, ByVal lpDefault As String, _
ByVal lpReturnedString As String, ByVal nSize As Integer, ByVal lpFileName As String) As Integer
Public Function getSettingF(ByVal lpFileName As String, ByVal lpSection As String, ByVal lpKey As String, ByVal lpDefault As String) As String
Dim nSubName As String
Dim retVal As Integer
Dim nBuffer As String
Dim nBytes As Integer
'Reservera x bytes (Annars krashar programmet). Läs värdet.
'Trimma sedan bort alla inledande och avslutande mellanslag.
nBuffer = String(1024, Chr(32))
retVal = GetPrivateProfileString(lpSection, lpKey, lpDefault, nBuffer, nBytes, lpFileName)
getSettingF = Left(nBuffer, retVal)
End Function
</code>