問題タブ [getprocaddress]

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 投票する
2 に答える
9194 参照

c++ - LoadLibraryを使用したSTATUS_STACK_BUFFER_OVERRUN

LoadLibraryを使用してiphlpapi.dllをロードすると、スタックバッファがオーバーランします。どうすればこの問題を解決できますか?!

lib関数のロードと実行は正常に機能していますが、ある時点で、プログラムがSTATUS_STACK_BUFFER_OVERRUN例外をスローします。(いくつかのポイント:文字列操作にコメントすると、数行後にエラーが発生します)

LoadLibraryとGetProcAddress(静的バインディング)を使用しない場合->バッファオーバーランはありません!

ありがとう、挨拶、

leon22

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

delphi - Delphi で DLL クラス プロシージャ アドレスを取得する

クラス プロシージャのメモリ アドレスが必要な DLL ファイルがあります。DLL ファイルのハンドルを取得していますが、GetProcAddress を使用すると、プロシージャのアドレスを取得できません。プロセス名パラメーターに次の文字列を試しました。

いずれの場合も、プロシージャのメモリ アドレスを取得できませんでした。手順が公開されていることはほぼ確実です。

これを行うための文字列形式は何ですか? 外部プロシージャを指す関数を宣言し、後でアドレスを取得する方が簡単でしょうか? このような:

0 投票する
1 に答える
352 参照

c++ - GetProcAddressによって返された関数を呼び出す永続的なアクセスエラー

これが私のコードです。それを行うのは簡単なようですが、どういうわけかそれはうまくいきません。関数の最後の呼び出しは常にアクセスエラーで失敗します。

mydll.dllはサードパーティのdllです。ソースコードはありませんが、ヘッダーの関数のプロトタイプは次のとおりです。

mydll.dll自体は、ディレクトリ "C:\ MyDllDir"に格納されている他のいくつかのdllに依存しているため、SetDllDirectoryが呼び出されます。

いくつかの観察:

  • バニラのLoadLibraryを機能させることはできませんでしたがLoadLibraryEx、引数を使用すると機能するように見えGetLastErrorます(その場合は0
  • 返されたdllのアドレスが奇妙に見える(0x43900000
  • によって返される関数のアドレスGetProcAddressも奇数(0x43902b34)ですが、DLL Export ViewerはInit関数にオフセットがあると報告します0x00002b34
  • 返された関数を呼び出すと、常にアクセスエラーがスローされます。_ccdecl関数の__stdcallなどのすべての組み合わせを試しましtypedefたが、常に同じエラーが発生します。私はありとなしで試しましたextern C

その他のデータ:

  • このc++コードは、管理された環境から呼び出されています
  • 私はWindows7、64ビットで実行していますが、管理されていない部分をwin32としてコンパイルしています

私は何が間違っているのですか?どうすればこれをデバッグできますか?依存関係ウォーカーとdllエクスポートビューアを試しましたが、すべて問題ないようです。

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

c++ - GetProcAddress ヘッダー ファイルのない Class オブジェクト

対応する dll ヘッダー ファイルがなくても、dll からクラス オブジェクトを取得できるはずです!? しかし、ヘッダーファイルから既知の型なしで GetProcAddress のクラスの typedef を作成するにはどうすればよいですか?

例がありますか?

感謝と挨拶

レオン22

0 投票する
1 に答える
782 参照

c# - .net dll(C#)からの関数メソッドのエクスポートについて

math.dll

そして、私のexeプロジェクトでは、Add()関数を使用したいので、

例1-これは機能しています

例2-これは機能していません

例3-これは機能していません

例(2,3)が機能しないことの間違いはどこにあるのか教えてください。ありがとう。

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

c++ - C++ の GetProcAddress 関数

皆さん、こんにちは。プロジェクトに DLL をロードしましたが、GetProcAddress 関数を使用するたびに。NULL を返します。私は何をすべきか?「MYDLL.dll」でこの関数( double GetNumber(double x) )を使用します

これが私が使用したコードです:

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

windows-7 - void 以外の関数では GetProcAddress が機能しない

GetProcAddress に問題があります。関数を 1 つだけ含む単純な DLL を作成しました。

関数のアドレスを取得しようとすると、GetProcAddress が ErrorCode 127 (ERROR_PROC_NOT_FOUND) で失敗します。ただし、関数型として void を使用すると、完全に機能します。なぜこのような振る舞いをするのか、私にはよくわかりません。どんな提案でも大歓迎です!

ところで: DependencyWalker は、関数の名前が実際に「関数」であり、変更が適用されていないことを示しています。

0 投票する
1 に答える
5119 参照

assembly - ASM: LoadLibrary と GetProcAddress

私は初めて ASM を使用しています。続行する前に、これを書いたときにすべてを正しく理解したかどうかを知る必要があります。現在のコードは次のようになります。

0xDEADBEEF はダミーのアドレスで、後でパッチを適用します。何か間違っていることでも?=)

0 投票する
1 に答える
4775 参照

c - GetProcAddressはNULLを返します

DLLの単純な関数を使用する必要があります。ライブラリをロードできますが、GetProcAddressはNULLを返します。名前マングリングは理解できたと思いますが、何か間違ったことをしているのかもしれません。ありがとう(コードは続きます、できるだけ早く必要な他の情報を追加します):

mydll.h

mydll.cpp

main.cppからのコード

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

c++ - C++サードパーティのDLLファイルを動的にロードする方法

サードパーティのDLLファイルをアプリケーションに統合する必要があります。DLLの.DLLと.pdfのドキュメントしかありません。

これはdllのpdfです:http ://www.whiteboxrobotics.com/Support/pdf/PC-BOT_dotNet_v1.0_documentation.pdf

DLLをツールボックスにドラッグするだけでVisualStudioにロードできますが、コーディングでどのように行われるのか知りたいです。

私はDLLしか持っていないので、LoadLibrary()とGetProcAddress()を使用した動的ロードが唯一のオプションだと思います。

しかし、それはとても面倒なようで、カスタム(列挙型)パラメーターを受け取る関数をロードする方法がわかりません。たとえば、.pdfではPCBOTEventArgsを受け取る関数SendMessage(...)です。パラメータの1つとしてmessageType。

しかし、デザインビューを介したDLLのロードは非常に簡単で、DLL全体を抽出します。

何故ですか?

関数ポインタとGetProcAddress()を使用する以外に何かありますか?