問題タブ [dll]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
8 に答える
9469 参照

windows - Windows での dll のビルドとデプロイ: SxS、マニフェスト、その他すべて

VS 2005 以降、MS ランタイムに対して単純に dll をビルドし、それらを一緒にデプロイすることはできないことがわかりました ( http://www.ddj.com/windows/184406482 )。マニフェスト、SxS、および co に深く混乱しています。MSDN のドキュメントは、循環参照があり、非常に貧弱です。特に、私はどちらかというと Unix 派なので、これらはすべて有益ではありません。私の中心的な問題は、msvc9 または msvc8 に対して dll をリンクすることです。これらのランタイムは再配布可能ではないため、そのような dll をリンクしてデプロイする手順は何ですか? 特に、マニフェストはどのように生成されますか (mt.exe は必要ありません。コンパイラ間で移植可能なものが必要です)、マニフェストはどのように埋め込まれ、使用されますか? Side by side assembly とはどういう意味ですか?

基本的に、MS 専門用語以外の仕様はどこで見つけることができますか?

回答してくださった皆様、本当に参考になりました、ありがとうございます

0 投票する
5 に答える
28095 参照

c++ - DLLからC++クラスを動的にインポートする

DLLからC++クラスをインポートする正しい方法は何ですか?VisualC++を使用しています。

dllexport / exports.def + LoadLibrary + GetProcAddress trifectaがありますが、C ++クラスでは機能せず、C関数でのみ機能します。これはC++の名前マングリングによるものですか?これを機能させるにはどうすればよいですか?

0 投票する
3 に答える
14131 参照

winapi - 自分のコードのモジュール ハンドルを取得するには?

重複の可能性:
現在実行中のコードの HMODULE を取得するにはどうすればよいですか?

自分のモジュールでリソースを見つけようとしています。このモジュールが実行可能である場合、それは簡単です - GetModuleHandle(NULL)「メイン」モジュールのハンドルを返します。

ただし、私のモジュールは、別の実行可能ファイルによってロードされる DLL です。そのGetModuleHandle(NULL)ため、モジュールハンドルをその実行可能ファイルに返しますが、これは明らかに私が望んでいるものではありません。

現在実行中のコードを含むモジュールのモジュール ハンドルを特定する方法はありますか? への呼び出しで DLL の名前を使用することは、GetModuleHandle()私にはハックのように思えます (問題のコードが別の DLL に移植された場合、簡単に保守できません)。

0 投票する
2 に答える
6955 参照

dll - マネージ DLL から実行可能パスを取得する方法

C# 実行可能ファイルで使用されるクラスを含むマネージ DLL (C++/CLI で記述) があります。クラスのコンストラクターで、DLL を参照する実行可能ファイルのフル パスにアクセスする必要があります。実際のアプリでは、Application オブジェクトを使用してこれを行うことができますが、マネージ DLL からどのように行うことができますか?

0 投票する
9 に答える
316312 参照

windows - DLLファイルとは正確には何ですか?また、それらはどのように機能しますか?

DLLファイルはどの程度正確に機能しますか?非常に多いようですが、何なのか、どのように機能するのかわかりません。

それで、彼らとの取引は何ですか?

0 投票する
3 に答える
3455 参照

.net - Visual Studio での .NET 以外の依存関係の指定

P/Invoke を使用してプロジェクトから非 .NET dll を呼び出しています。つまり、.dll は常に .exe のディレクトリに存在する必要があります。

コンパイル時に.dllを出力ディレクトリに自動的にコピーし、.dllをセットアップに自動的に含めるように、この依存関係をVisual Studioに伝える方法はありますか? または、これを手動で行う必要がありますか?

0 投票する
3 に答える
8809 参照

vb.net - COMコンポーネント参照をVB.NETプロジェクトに追加する際の問題

vb.net(2008 Express)プロジェクトに追加しようとしているサードパーティのCOMdllがあります。dllをC:\ WINDOWS \ system32 \に置き、「zippy32vxncom.dll」に登録しました。[プロジェクト]>[参照の追加]に移動して[COM]タブに移動すると、使用可能なコンポーネント/ライブラリのリストに表示されます。しかし、ライブラリを選択して[OK]をクリックすると、VisualStudioから「「vxncom4.0ライブラリ」への参照を追加できませんでした。ActiveXタイプライブラリ「C:\ WINDOWS \ system32\vxncom.dll」を登録できませんでした」というメッセージが表示されます。

私がこれを行っているプロジェクトは、dllを配布する人々によって提供された例です。新しい(空白の)vb.netプロジェクトを開始しても、コンポーネントを追加できません。

更新1:

問題のdllで依存関係ウォーカーを実行しました。エラーログに表示される内容は次のとおりです。

エラー:暗黙的に依存するモジュールにエクスポート機能がないため、少なくとも1つのモジュールに未解決のインポートがあります。

問題のモジュールはlibeay32.dllのようですが、C:\ WINDOWS\system32に既に存在します。

更新2:

私はopensslサイトにアクセスし、インストーラーをダウンロードして使用し、libeay32.dllを更新しました。vxncom.dllで依存関係ウォーカーを再度実行しましたが、エラーは発生しませんでした。Visual Studioに戻りましたが、それでも参照を追加したくありませんでした。以前とまったく同じエラー。

0 投票する
5 に答える
333 参照

windows - DLL で CPU 固有の機能を使用するための標準的な手法は何ですか?

短いバージョン: DLL 内で CPU 固有の命令を利用することが可能かどうか、またどのように最適なのか疑問に思っていますか?

少し長いバージョン: Microsoft などから (32 ビット) DLL をダウンロードする場合、1 つのサイズですべてのプロセッサに適合するようです。

これは、それらが最小公分母 (つまり、OS でサポートされる最小プラットフォーム) 用に厳密に構築されていることを意味しますか? または、DLL 内の単一のインターフェイスをエクスポートするために使用されるテクニックがありますが、最適なパフォーマンスを得るために舞台裏で CPU 固有のコードを利用しますか? もしそうなら、それはどのように行われますか?

0 投票する
7 に答える
5726 参照

c - Cでコンソールexeをdllに変換する

オープン ソースのコンソール アプリケーションであるSoXを別の Windows GUI プログラム (自然に Delphi で記述) から呼び出すことに興味があります。コンソール ウィンドウをスクレイピングして非表示にするのではなく、アプリケーションから呼び出すことができる DLL にアプリケーションを変換したいと考えています。

この道を歩み始める前に、どのくらいの仕事を期待すべきか知りたいです。私たちは大事業について話しているのでしょうか、それとも簡単な解決策はありますか? 私は C をある程度知っていますが、決して専門家ではありません。

SoX 固有の詳細は期待していません。一般的な DLL への EXE コンソール アプリケーションの変換だけです。ただし、誰かが SoX に精通している場合はなおさらです。

0 投票する
6 に答える
6042 参照

c++ - DLLのアンロード時にメモリリークが発生すると、ホストプロセスにリークが発生しますか?

この場合を考えてみましょう:

この時点で、malloc()の呼び出しで割り当てられた1kは、ホストプロセスで再び使用できるようになりますか?DLLはCRTに静的にリンクしています。