請教各位
我目前有一個標準執行檔和一個Active Dll
Active Dll裡面,有個Class1和一個Form1
標準執行檔裡有個Form2
Class1裡面程式碼為
'-----------------------------
Option Explicit
Public Function ShowForm() As String
On Error Resume Next
Form1.Show vbModal
End Function
'-----------------------------
Form1裡面,有個Text1的文字欄位
'-----------------------------
然後標準執行檔裡,也設定引用這個dll元件
裡面的Form2也有個Text1,和一個按鈕,當按下按鈕,就呼叫dll裡的Form1
我的Form2的程式碼是
'--------------------------------
Private Sub Command1_Click()
Dim Test As New Test.class1
Test.ShowForm
End Sub
'---------------------------------
我想請問的是
1.我要如何讓Form2裡的Text1的值帶入到dll裡的Form1裡的Text1呢
2.好像每次我修改dll檔,然後再製成dll檔後,然後我再重新開啟那個標準執行檔都會說找不到dll檔,然後我又要去設定引用項目將這個dll檔打勾才又可以,要如何弄呢,我有將dll放在windows\system\下
然後有看到說可以用API : LoadLibr....的方式,但是還不了解它整個字串要如何弄
謝謝各位的幫忙
我目前有一個標準執行檔和一個Active Dll
Active Dll裡面,有個Class1和一個Form1
標準執行檔裡有個Form2
Class1裡面程式碼為
'-----------------------------
Option Explicit
Public Function ShowForm() As String
On Error Resume Next
Form1.Show vbModal
End Function
'-----------------------------
Form1裡面,有個Text1的文字欄位
'-----------------------------
然後標準執行檔裡,也設定引用這個dll元件
裡面的Form2也有個Text1,和一個按鈕,當按下按鈕,就呼叫dll裡的Form1
我的Form2的程式碼是
'--------------------------------
Private Sub Command1_Click()
Dim Test As New Test.class1
Test.ShowForm
End Sub
'---------------------------------
我想請問的是
1.我要如何讓Form2裡的Text1的值帶入到dll裡的Form1裡的Text1呢
2.好像每次我修改dll檔,然後再製成dll檔後,然後我再重新開啟那個標準執行檔都會說找不到dll檔,然後我又要去設定引用項目將這個dll檔打勾才又可以,要如何弄呢,我有將dll放在windows\system\下
然後有看到說可以用API : LoadLibr....的方式,但是還不了解它整個字串要如何弄
謝謝各位的幫忙
文章標籤
全站熱搜

1.你Test.Class1.ShowForm 這個Sub可以改成可以代參數的,這樣就可以把參數再傳給Dll裡的Form1.Text1.text了,不算太難吧^^ 2.在vb的menu的專案->屬性->元件->版本相容元件->與機器碼相容 這樣你編譯出來的DLL才能有比較好的相容性 另外Com的Dll放哪並不是那麼重要,相容性的問題才是你的重點,介面不能隨意的變更,只能多,不能少,我想這才是你要去學習的
謝謝你的幫忙 因為不了解如何帶參數,剛才又查了全文"帶參數",但是找不到相關的資料 能否再請教,參數要如何帶入呢 我已將屬性改成與機器碼相容,再試試看它的結果是如何 謝謝你
可以了耶 剛才試了好多方法 結果這個樣子就可以了耶 Private Sub Command1_Click() Dim Test As New Test.Class1 Test.ShowForm (Text1) End Sub ==================================================== Public Function ShowForm(Text1 As String) As String Set Form1 = New Form1 Form1.Show Form1.Text1 = Text1 End Function ==================================================== 但是,如果帶的參數數量2個以上,又不行了 Private Sub Command1_Click() Dim Test As New Test.Class1 Test.ShowForm (Text1,Text2) End Sub ==================================================== Public Function ShowForm(Text1 As String,Text2 As String) As String Set Form1 = New Form1 Form1.Show Form1.Text1 = Text1 Form1.Text2 = Text2 End Function ==================================================== 請問我該如何處理呢,謝謝各位