私はvisual basic 6.0でc#(visual studio 2008)から書かれたメソッドを呼びたいと思います。出来ますか?どうすればいい?C#でvisual basic 6.0メソッドを呼び出すにはどうすればよいですか?
答えて
最も簡単な方法は、VB6コードをActiveX DLLとしてコンパイルすることです。 その後、.netプロジェクトでDLLを参照できます。 (Visual StudioはActiveX DLLを適切に参照できます)
はい。可能です。 Visual Basicで記述されたメソッドを呼び出すように呼び出すことができます。アセンブリへの参照が必要です。次に、正しい名前空間で呼び出すだけです。
地獄(DLL)へのVB6は、アセンブリを作成しないと.NETのメタデータを排出しません。 –
このようにしてVB6.0を使用できますか? –
@Saeed:質問はVBのバージョンについては最初に特定されていないようです。 –
VB6コードがCOMサーバーとしてコンパイルされている場合にのみ可能です。
VB6にCOMサーバーとしてコンパイルするオプションがありますか?私はVB6.0を持っていませんでしたが、私はあなたが思うようにそれをCOMにするのは簡単ではないと思います。 –
@Saeed:実際はかなりシンプルです。プロジェクトオプションにはチェックボックスがあり、問題の関数がコードモジュールではなくクラスモジュール内のメソッドであることを確認する必要があります(クラスモジュールがプライベートでないことを確認してください)。私はそれが長い時間だったので絶対に確信することはできませんが、私はそれがすべて必要だと思います。 –
COMサーバーでVB6 CODEをコンパイルする方法 – ratty
.NETはVB6 DLLをCOM DLLのように使用できます。
「参照の追加」をクリックして、DLLが既に登録されている場合は「COM」タブを選択するか、ファイルを直接選択するために「参照」タブをクリックします。
COMと互換性がある場合、Visual StudioはVB6 DLLの.NETラッパーとして動作するCOM相互運用機能アセンブリを自動的に作成します。
プログラムでVB6 dllとInteropアセンブリを展開する必要があります。
が使用してそれを登録するActiveX DLLとして、あなたのVB6のDLLコンパイル - 。(登録して実行]ダイアログを使用するか、コマンドプロンプト)>します。regsvr32 "フルネームと新しくコンパイルしVB6のDLLのパスを"
In .net refrence-select comタブを追加して、この新規に登録したdllを検索してください。
このdllを使用できます。
注:
あなたはVB6のコードの変更を行うたびに、あなたは再び上記の手順に従わなければなりません。
VB6のDLL使用します。regsvr32 "名とパスを" 登録解除するには、/ uの
歓迎
- 1. application_controllerでメソッドを呼び出すにはどうすればよいですか?
- 2. C#で別のクラスから非静的メソッドを呼び出すにはどうすればよいですか?
- 3. 私のASP.NETアプリケーションでC#でWebメソッドを呼び出すにはどうすればよいですか?
- 4. Visual C++ 6.0からVisual Studio Express 2010にプロジェクトを変換するにはどうすればよいですか?
- 5. Visual Basic 6からJavaメソッドを呼び出す
- 6. 親ビューでメソッドを呼び出すにはどうすればよいですか? (iPhone/Objective-C)
- 7. Objective-Cで基本メソッドを作成して呼び出すにはどうすればよいですか?
- 8. asp.net C#4.0で非同期メソッドを呼び出すにはどうすればよいですか?
- 9. 私のCコードからC#DLLのメソッドを呼び出すにはどうすればいいですか?
- 10. CakePHPのモデルでbeforeSave()メソッドから 'log()'メソッドを呼び出すにはどうすればよいですか?
- 11. Visual BasicからC++コンストラクタを呼び出す方法
- 12. プロジェクトを取得し、メソッド内から "コンパイル"メソッドを呼び出すにはどうすればよいですか?
- 13. 静的メソッドを呼び出すクラスとメソッドを取得するにはどうすればよいですか?
- 14. メソッド内のメソッドを呼び出す変数を使用するにはどうすればよいですか?
- 15. javaオブジェクトをJavaで呼び出されるGroovyメソッドに渡すにはどうすればよいですか?
- 16. アクティビティでカスタムクラスを呼び出すにはどうすればよいですか?
- 17. レールコントローラでチャンネルメソッドを呼び出すにはどうすればよいですか?
- 18. サービスクラスでsupportFragmentMangerを呼び出すにはどうすればよいですか?
- 19. インスタンスでクラスメソッドを呼び出すにはどうすればよいですか?
- 20. MVCでコントローラアクションを呼び出すにはどうすればよいですか?
- 21. ベースクラスオブジェクトでサブクラスメソッドを呼び出すにはどうすればよいですか?
- 22. render()で.selectedIndexを呼び出すにはどうすればよいですか?
- 23. SwiftでNSLocalizedStringWithDefaultValueを呼び出すにはどうすればよいですか?
- 24. MVC4でカスタムモデルバインダーを呼び出すにはどうすればよいですか?
- 25. ViewPagerOnTabSelectedListenerをプログラムで呼び出すにはどうすればよいですか?
- 26. クラスオブジェクトで.lowerを呼び出すにはどうすればよいですか?
- 27. backgroundWorkerの外部クラスから呼び出されたメソッドからフォーム上のメソッドを呼び出すにはどうすればよいですか?
- 28. Matlab R2007bをVisual StudioのC++ 6.0で使用するにはどうすればよいですか?
- 29. 呼び出すJavascriptコード(Visual Basicの)
- 30. Visual Basic 6.0ケースステートメント
+1。 VB6でActiveX DLLを作成するためのステップバイステップの手順は、[こちら](http://stackoverflow.com/questions/3477265/com-dll-in-vb6/3477344#3477344)です。 VB6マニュアル](http://msdn.microsoft.com/en-us/library/aa229332%28v=VS.60%29.aspx)を参照してください。次に、C#プロジェクトでVB6 ActiveX DLLを参照するだけで、[参照の追加]ダイアログボックスの[COM]タブに表示されます。 – MarkJ