Hejsan Om du har en textruta och chr(0) i så blir det inget bryt av det. Hade du skrivit chr(13) så hade det blivit ett radbryt. Dock hade du fått ställa in att textboxen även skulle ha egenskapen multiline=true. Hoppas du kan läsa och översätta detta alster från ett av mina projekt.Inifil hantering...
Undrar om någon har en bra INI-fils läs och skriv funktion som klarar av att läsa och skriva alla typer av tecken till/från en ini-fil. Den jag använder nu (GetPrivateProfilestring / WritePrivateProfilestring), verkar inte förstå vad chr(0) innebär och klipper strängen.
ex: HEJHOPP(chr(0))HEJHOPP
Blir endast HEJHOPP när den läses in till tex en textbox.
Kan det ha något med följande rad att göra??
sRet = String(255, Chr(0))
Någon som har en bra lösning på detta så skulle jag bli otroligt glad.
/MikaelSv: Inifil hantering...
Sv: Inifil hantering...
Oavsett vad vissa "besserwissernissar" skriver så är Inifilhantering är kanonbra.
Dim Dummy As String i General
INIFILE är mitt namn och sökväg till Inifilen
När man plockar ur koden ur sitt sammanhang blir det småfel som du säkert ser.
<code>
Private Sub MakeIni(Default As String, FL As Boolean)
'Skapar eller uppdaterar FarlGods.ini
Dim FileNum As Long, BackUpIni As String
'Här är ett knep att undersöka om *.ini filen redan finns
On Error Resume Next
BackUpIni = SearchPath & _
"FGData\FGBiblio\BackUpBibliotek\Farlgods.ini"
'Inifilen finns och skall uppdateras
If FL = True Then
Dummy = WritePrivateProfileString(AppName, _
KeyName, Default, INIFILE)
'Senast kända Linje
Default = lblShipMsg
If Len(lblShipMsg) > 0 Then _
Dummy = WritePrivateProfileString(AppName, _
Linje, Default, INIFILE)
'Lägga in Mode
Default = cmdBok.Tag
Dummy = WritePrivateProfileString(AppName, _
Mode, Default, INIFILE)
'Lägger in backup senast kända MasterPath
Dummy = WritePrivateProfileString(AppName, _
MasterName, MasterPath, BackUpIni)
'Senast kända Linje
If Len(lblShipMsg) > 0 Then _
Dummy = WritePrivateProfileString(AppName, _
Linje, Default, BackUpIni)
'Senast kända Mode
Default = cmdBok.Tag
Dummy = WritePrivateProfileString(AppName, _
Mode, Default, BackUpIni)
Exit Sub
End If ' FL
FileNum = FreeFile
Open INIFILE For Input As FileNum
If Err = 53 Then 'IniFil finns inte måste tillverka
'Tillverkar och Spara värde i FarlGods.ini
Close #FileNum
Dummy = WritePrivateProfileString(AppName, _
KeyName, "Inget Registrerat****Tryck < Esc >*", INIFILE)
Dummy = WritePrivateProfileString(AppName, _
Linje, " ", INIFILE)
Dummy = WritePrivateProfileString(AppName, _
Mode, "Rapport", INIFILE)
'Hämtar Mastersökväg från BackUpInifilen
ReturnedString = Space$(nSize)
Dummy = GetPrivateProfileString(AppName, MasterName, _
"", ReturnedString, nSize, BackUpIni)
If InStr(ReturnedString, Chr(0)) Then _
ReturnedString = Left(ReturnedString, _
InStr(ReturnedString, Chr(0)) - 1)
'Ta bort NULL-tecken (Chr$(0))
MasterPath = ReturnedString
Dummy = WritePrivateProfileString(AppName, _
MasterName, MasterPath, INIFILE)
End If ' Err 53
End Sub
'***************************************
Private Sub GetIni()
Dim nSize As Long,ReturnedString As String
nSize = 100
'Hämtar information från Inifilen
ReturnedString = String$(nSize,0)
Dummy = GetPrivateProfileString(AppName, KeyName, _
"", ReturnedString, nSize, INIFILE)
If InStr(ReturnedString, Chr(0)) Then _
ReturnedString = Left(ReturnedString, _
InStr(ReturnedString, Chr(0)) - 1)
'Ta bort NULL-tecken (Chr$(0))
'Hämtar Mastersökväg från Inifilen
ReturnedString = String$(nSize,0)
Dummy = GetPrivateProfileString(AppName, MasterName, _
"", ReturnedString, nSize, INIFILE)
If InStr(ReturnedString, Chr(0)) Then _
ReturnedString = Left(ReturnedString, _
InStr(ReturnedString, Chr(0)) - 1)
'Ta bort NULL-tecken (Chr$(0))
MasterPath = ReturnedString
'Hämtar Linje från Inifilen
ReturnedString = String$(nSize,0)
Dummy = GetPrivateProfileString(AppName, Linje, _
"", ReturnedString, nSize, INIFILE)
If InStr(ReturnedString, Chr(0)) Then _
ReturnedString = Left(ReturnedString, _
InStr(ReturnedString, Chr(0)) - 1)
'Ta bort NULL-tecken (Chr$(0))
End Sub
</code>