- - PR -
C#初心者です。C#で作成したDLLをC#で使用する。
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-05-24 18:16
はじめまして。
今回はじめてこちらに参加させていただきます。 C#でプログラム開発を行っているのですが、 現在同じソリューションにある”プロジェクト”「A」と「B」を別の ソリューションにしようと思っています。 現在設定しているAプロジェクトでのBの参照設定を削除し、 C++を使うみたいに、DLLImportを使って使用しようとやってみたのですが 上手くいきません。 そこで、 @呼ばれる側のC#プログラム「B」はどのように作ればよいのか? A呼ぶ側のAプログラムは「B」をどのように使えばよいのか? この方法をご存知の方ご教示願いますよう お願いします。 ※C#でC++のDLLを使うやり方は幾つかあったのですが、 C#のDLLを使う方法が見つかりませんでした。 呼ばれる側のBのプログラムも何らかの変更がいるのでしょうか? よろしくお願いします。 ※ご返答ありがとうございます。 不満というより、別々のソリューションにして開発を行うのが目的です。 >DllImport は無理です。 >諦めて参照設定してください。 ということは、やはりC#どうしは参照設定をして利用するしかないのでしょうか? DLLImportに限らず方法は無いのでしょうか? 皆様、ご回答ありがとうございました。 ご指摘のとおり、参照設定で行います。 ありがとうございました。 [ メッセージ編集済み 編集者: C_rotte 編集日時 2007-05-24 18:31 ] [ メッセージ編集済み 編集者: C_rotte 編集日時 2007-05-25 10:36 ] | ||||
|
投稿日時: 2007-05-24 18:25
DllImport は無理です。
諦めて参照設定してください。 というか何が不満ですか? // プラグインのように動的に解決するには Assembly.LoadFrom を使用しますが、DllImport は静的解決ですし。 | ||||
|
投稿日時: 2007-05-24 18:50
同じソリューションでないと参照できないと考えているという事でしょうか?
別ソリューションでも参照できますよ。(mscorlib.dll や System.dll などがそうであるように) # 元の投稿を編集して返信すると、他人に気付かれにくいですよ。 _________________ 囚人のジレンマな日々 | ||||
|
投稿日時: 2007-05-25 07:48
別ソリューションで開発するならアセンブリを参照設定すると思うのですが、 実際何が問題になっているのでしょうか? _________________ かるあ のメモ と スニペット | ||||
|
投稿日時: 2007-05-25 09:53
別のソリューションで開発する時も開発段階においては DLL となっているプロジェクトを
「既存のプロジェクト」 として追加し 「プロジェクト参照」 + 「VSS」 を使うことを強く推奨します。 メリットとしましては、
その DLL が完成品であっても品質に問題のことが少なからずあるため、デバッグで追えることが望ましいです。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2007-05-25 10:53
そもそもDllImportを使うべきところがどういうところなのかをC_rotteさんが認識されてないと思うのでややこしくなっているように思います。
Win32 APIやDLL関数を呼び出すには? DllImportはアンマネージドなDllを.Netで開発したプログラムから使うための物で、.Netで開発したDll等はDllImportを使わないで参照設定だけでいいですよって言ってるんです。 (というかHongliangさんのおっしゃるとおり出来ないですが) じゃんぬねっとさんがおっしゃるとおり、メリットも多いですので特に否定要素が無いならば参照設定した状態で開発してみてはいかがでしょうか? (デバッガで動かせるのが一番うれしかったVB=>C#移行者) |
1