CheatEnabled Skrevet 30. september 2007 Del Skrevet 30. september 2007 Jeg har et program der man kan lagre en config-fil, men samme hvordan man skal lagre filen kommer erroret Run Time Error 52: Bad File Name opp. Sourcen ser omtrent sånn her ut: Dim filsted As String cd.ShowSave filsted = cd.FileName Open filsted For Output As #config Print #config, Text1.Text Print #config, Text2.Text Print #config, Text3.Text Close #config cd er en Microsoft Common Dialog. Jeg prøvde også lagre filen i samme mappe som programmet med app.path & "config.txt", men fikk samme error. Noen som vet hvordan jeg kan fikse det? PS: Vet ikke om det har noe å si, men jeg kjører Vista Home Premium Lenke til kommentar
aadnk Skrevet 30. september 2007 Del Skrevet 30. september 2007 (endret) Du må sette config-variabelen (gjerne endre til filID) til #1 eller FreeFile: Dim filsted As String, filID As Long cd.ShowSave filsted = cd.FileName filID = FreeFile Open filsted For Output As #filID Print #filID, Text1.Text Print #filID, Text2.Text Print #filID, Text3.Text Close #filID Endret 30. september 2007 av aadnk Lenke til kommentar
CheatEnabled Skrevet 30. september 2007 Forfatter Del Skrevet 30. september 2007 (endret) Takk for hjelpen EDIT: Jeg har et nytt problem som har litt med dette å gjøre. Det omhandler VBCorLib. Jeg ha lest en thread der det står at man kan adde en reference til VBCorLib for å kunne lese en txt-fil og så legge informasjon fra hver linje inn i forskjellige tekstbokser. Private Sub Command2_Click() Dim linjer() As String Dim filsted As String filsted = App.Path & "config.txt" linjer = File.ReadAllLines(filsted) Text1.Text = linjer(0) Text2.Text = linjer(1) Text3.Text = linjer(2) Text4.Text = linjer(3) End Sub Sånn ser koden min ut. Dette funker på min PC, men når jeg sendte programmet til en venn som tester det for meg, fikk han et error: ActiveX Component cant create object Hvordan skal jeg fikse dette erroret? Endret 30. september 2007 av CheatEnabled Lenke til kommentar
aadnk Skrevet 30. september 2007 Del Skrevet 30. september 2007 (endret) Hvordan skal jeg fikse dette erroret? 9605193[/snapback] Be ham laste ned og installere (eller automatiser prosessen i et installasjonsprogram, likså Package & Deployment Wizard) filen VBCorLib.dll før han eksekverer programmet ditt. Denne blir IKKE inkludert automatisk i EXE-filen, om det var det du trodde. Rent konkret må man (manuelt) utføre følgende: Last ned VBCorLib_Bin_2_1.zip fra denne nettsiden. Ekstrakter ZIP-filen og kopier VBCorLib.dll til %windir%\System32 (vanligvis C:\Windows\System32). Kjør følgende kommando i Start -> Run: regsvr32 %windir%\System32\VBCorLib.dll Endret 30. september 2007 av aadnk Lenke til kommentar
CheatEnabled Skrevet 30. september 2007 Forfatter Del Skrevet 30. september 2007 Finnes det noen annen måte å kopiere tiekst over i forskjellige tekstbokser uten å bruke noen annen dll-fil? Det blir litt unødvendig å legge til dllen til et lite (150kb) program. Lenke til kommentar
aadnk Skrevet 30. september 2007 Del Skrevet 30. september 2007 Jada: Public Function ReadAllLines(Path As String) As String() Dim Free As Long, Buff() As String, Index As Long ' Hent ledig filid Free = FreeFile ' Standardstørrelse ReDim Buff(1) ' Be om åpnetillatelse og fravær av overskriving Open Path For Input Access Read Lock Write As #Free ' Last inn nye linjer inntil vi har nådd enden av filen Do Until EOF(Free) ' Se om vi behøver en større array If UBound(Buff) <= Index Then ReDim Preserve Buff(0 To Index * 2) End If ' Les inn neste linje Input #Free, Buff(Index) Index = Index + 1 Loop Close #Free ' Normaliser antall linjer If Index > 0 Then ReDim Preserve Buff(Index - 1) End If ' Returner array ReadAllLines = Buff End Function Lenke til kommentar
CheatEnabled Skrevet 30. september 2007 Forfatter Del Skrevet 30. september 2007 Takk, det der hadde jeg bruk for. Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå