C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■88074 / )  Re[2]: Vb.netで作成したdllをc#で利用
□投稿者/ ホノカ (2回)-(2018/07/31(Tue) 23:07:39)
 返答、ありがとうございます。C#なのですね。
詳しく記載します。

----------------------------------------------------------------------------------
新規でC#のFormを作成する。→
ソリューションエクスプローラーから追加→新しいプロジェクト
→Visual Basic→クラスライブラリ→ClassLibrary1を名前にする→OK→
ClassLibrary1のClass1.vbを以下にする。


ここから
Public Class Class1
Public Function f(ByVal a1 As Integer) As String
Return (a1 + 100)
End Function
End Class
ここまで


ClassLibrary1をビルドし、ClassLibrary1.dllを作成する。→
ソリューションエクスプローラーからC#のプロジェクトを参照を選択→
参照の追加→ClassLibrary1.dllを追加→OK→
ソリューションエクスプローラーからC#のプロジェクトを参照を選択→
参照の追加→Microsoft.VisualBasic.dllを追加→OK→
C#のProgram.csを以下にした後ビルドする。

ここから
using System;
namespace test01
{
static class Program
{
[STAThread]
static void Main()
{
object Test02 = new ClassLibrary1.Class1();

Console.WriteLine(Test02);
Console.WriteLine(Test02.f(1));
}
}
}
ここまで
----------------------------------------------------------------------------------

----------------------------------------------------------------------------------
エラーメッセージ
'object' に 'f' の定義が含まれておらず、型 'object' の最初の引数を受け付ける拡張
メソッド 'f' が見つかりませんでした。using ディレクティブまたはアセンブリ参照が
不足していないことを確認してください。
----------------------------------------------------------------------------------


Console.WriteLine(Test02.f(1));に対して、エラーが発生します。
Test02.を入力した後、インテリセンスで
fを選びたいのですが、インテリセンスにはfがありません。

返信 編集キー/


管理者用

- Child Tree -