DOBON.NETプログラミング道掲示板

■34446 / 親記事)  Declare宣言するdllと参照追加をするdllの区別
  
□投稿者/ nao 一般人(8回)-(2020/03/22(Sun) 17:15:45)
  • アイコン環境/言語:[VB.NET .NET Framework2.0] 
    分類:[.NET] 

    Declare宣言をしなければならないdllと、参照に追加するするだけで使用できるdllの違いは何でしょうか。
    どうやって区別したらよいのでしょうか。

    参照に追加するだけで使用できるdllもDeclare宣言をすると参照に追加しないで使用できるようになる、またはDeclare宣言をしなければならないdllも参照に追加すると使用できるようになるということはあるのでしょうか。

    よろしくお願いいたします。
マルチポストを報告
違反を報告
引用返信 削除キー/
■34447 / ResNo.1)  Re[1]: Declare宣言するdllと参照追加をするdllの区別
□投稿者/ Azulean 大御所(514回)-(2020/03/22(Sun) 18:49:52)
  • アイコンNo34446に返信(naoさんの記事)
    > Declare宣言をしなければならないdll
    昔ながらの C 言語ベースの関数エクスポートがされている DLL を呼び出す際に使います。
    DLL 側には引数や戻り値に関する情報がないので、自分で引数や戻り値を定義する必要があります。


    > 参照に追加するするだけで使用できるdll
    主に .NET で作成された DLL です。
    型に関するメタデータが埋め込まれているので、どんな型があり、どんなメソッドがあるか、引数が何であるかなどもわかるようになっています。


    > どうやって区別したらよいのでしょうか。
    基本的にはその DLL のドキュメントを見ることではないでしょうか?
    試しに参照に追加するでも良いとは思いますが…。


    > 参照に追加するだけで使用できるdllもDeclare宣言をすると参照に追加しないで使用できるようになる、またはDeclare宣言をしなければならないdllも参照に追加すると使用できるようになるということはあるのでしょうか。

    原則的にありません。
    .NET の DLL は関数エクスポートがサポートされていないので、参照設定に追加するしかありません。

    // おそらく、Task 話と .NET 2.0 問題からの思いつきだと思いますが、Declare で逃げることはできません。
    // C++/CLI にチャレンジされるなら、話は別ですが。
違反を報告
引用返信 削除キー/
■34448 / ResNo.2)  Re[2]: Declare宣言するdllと参照追加をするdllの区別
□投稿者/ nao 一般人(9回)-(2020/03/22(Sun) 19:02:18)
  • アイコンご回答ありがとうございます。

    やはりdllだけでは区別はつかないのですね。

    > // おそらく、Task 話と .NET 2.0 問題からの思いつきだと思いますが、Declare で逃げることはできません。
    お察しの通りです。
    納期が近く、今から作成しなおしは辛いので、Declareで使用できないかと考えた次第です。
    やはり無理なのですね。

    ありがとうございました。

解決み!
違反を報告
引用返信 削除キー/
■34449 / ResNo.3)  Re[3]: Declare宣言するdllと参照追加をするdllの区別
□投稿者/ Azulean 大御所(515回)-(2020/03/22(Sun) 19:06:51)
  • アイコン2020/03/22(Sun) 19:07:49 編集(投稿者)

    No34448に返信(naoさんの記事)
    > 納期が近く、今から作成しなおしは辛いので、Declareで使用できないかと考えた次第です。
    > やはり無理なのですね。

    リスケか、.NET 2.0 世代のノウハウを持つ人材の投入か、何らかの策を早めに交渉・調整した方が良いと思います。
    .NET 2.0 時代のノウハウがない状態で、.NET 2.0 向けに同等仕様の安定した品質を短期間にリリースすることは無茶なので…。
解決み!
違反を報告
引用返信 削除キー/
■34450 / ResNo.4)  Re[4]: Declare宣言するdllと参照追加をするdllの区別
□投稿者/ nao 一般人(10回)-(2020/03/22(Sun) 19:14:00)
  • アイコン> リスケか、.NET 2.0 世代のノウハウを持つ人材の投入か、何らかの策を早めに交渉・調整した方が良いと思います。

    そうですよね。相談します。
    ありがとうございます。
解決み!
違反を報告
引用返信 削除キー/



スレッド内ページ移動 / << 0 >>

このスレッドに書きこむ

Mode/  Pass/


- Child Tree -