2016-11-20 77 views
0

我正在嘗試將vb6中的文本框的上下文'保存'到* .ini文件,以便它可以在程序的後面部分中使用。 (即用戶可以在文本框中輸入內容,然後在程序後面,用戶輸入並保存的信息就會出現一個標籤)。用戶定義的類型未定義vb6

我用這是我從別人的程序的源代碼複製下面的代碼,但並未奏效:

Dim fsys As New FileSystemObject 
Dim outstream As TextStream 
Dim write1 As String 
Dim val1 As String 
val1 = Text1.Text 
inisettings = App.Path & "\Variables.ini" 
Set outstream = fsys.OpenTextFile(inisettings, ForWriting, False, TristateFalse) 
outstream.WriteLine (val1) 
Set outstream = Nothing 

這是結果:

Error message

有誰有什麼辦法可以爲以後保存數據?

+0

@Danh,如果答案解決了您的問題,請將其標記爲解決方案。 – Herb

+0

@Herb不是我的問題 – Danh

+0

@Doofitator如果答案解決了您的問題,請將其標記爲解決方案。 – MarkJ

回答

1

您必須聲明TristateFalse,並給它的值如0,1或2

你可以看看這個鏈接:

https://msdn.microsoft.com/en-us/subscriptions/bxw6edd3(v=vs.84).aspx 

希望這可以幫助

3

FileSystemObject生活在外部庫中使用它點擊項目然後參考文獻和勾號Microsoft腳本運行時間

你實際上不需要做任何這些,下面的代碼使用VB的內置功能來編寫文件。

Dim hF As Integer 
hF = FreeFile() 

Open App.Path & "\Variables.ini" For Output As #hF 
Print #hF, val1 
Close #hF 
1

您得到此錯誤的原因是因爲您沒有對Microsoft腳本運行時庫的引用。在VB6項目中按照以下說明進行操作:

  1. 從頂部菜單中,單擊Project> References。
  2. 從列表中選中標題爲「Microsoft Scripting Runtime」的項目。
  3. 單擊確定。

這將解決您的直接錯誤,但是您的代碼仍然存在其他一些問題。首先,您忘記聲明變量inisettings。我將假設您每次更新INI文件時都要覆蓋整個文件,因此您想使用方法CreateTextFile而不是OpenTextFile

Dim fsys As New FileSystemObject 
Dim outstream As TextStream 
Dim write1 As String 
Dim val1 As String 
Dim inisettings As String 

val1 = Text1.Text 
inisettings = App.Path & "\Variables.ini" 
Set outstream = fsys.CreateTextFile(inisettings, True, False) 
Call outstream.WriteLine(val1) 
Set outstream = Nothing 

祝你好運!