getprocaddress

    3

    1答えて

    このようにMessageBox()関数を呼び出すとします: 1)。必要なライブラリをロードする 2)。関数のアドレスを取得 3)。それを呼び出す 私が理解するように、私はMessageBox関数ですべての型の引数を持つ新しい型を定義する必要があります。 INTを返し、HWND、LPCSTR、LPCSTR、UNITを受け入れます。 だから私は、新しいタイプregistred:私は、このような関数を呼

    2

    1答えて

    DLLから単純な関数を使用する必要があります。ライブラリを読み込めますが、GetProcAddressはNULLを返します。私はネームマングリングを理解したと思うが、多分私は何か間違っている。おかげで(コードは、以下の、できるだけ早く私は必要なその他の情報を追加します):main.cppにから mydll.h #ifdef MYDLL_EXPORTS #define MYDLL_API exte

    0

    3答えて

    起動引数を解析し、いくつかのDLLのうちの1つを「起動」する非常に小さなプログラムを書きたいと思います。 私はすでにアプリケーションとしてアプリケーションを作成し、代わりにDLLとしてビルドするようにVisual Studioのプロジェクトプロパティを変更することで、DLLとして「実行」したいアプリケーションを作成しました。私はLoadLibraryとGetProcAddressをコンサートで使用

    0

    2答えて

    私はGetProcAddressでGetProcAddressのアドレスを取得しようとしています。 空のexeプロジェクトから実行しているときに、有効なアドレス(kernel32の割り当てられたアドレスの間)を取得します。 私は、DLLからそれを呼んでいるとき、私は(ない割り当てられたカーネル32の範囲で)無効なアドレスを取得しています 違いは何ですか? 私はWindows 7で64ビットで動作し

    2

    2答えて

    を返された私は、次のコードを持っている: //mydll.cpp #include <Windows.h> #include <io.h> #define STDOUT_FILEDESC 1 class MYSTDOUT { bool shouldClose; bool isBuffered; public:

    1

    1答えて

    これは数回述べられていることは知っていますが、私の状況は少し異なります。 私はいくつかのクラスをエクスポートするサードパーティ製のDLLを持っています。残念ながら、ヘッダファイルは利用できません。 エクスポートされた関数を呼び出すことはまだ可能です。しかし、私は正しい 'this'ポインタ(RCXレジスタに渡される)を渡すことはできません。 最初にdumpbin/exportsを使用して関数名を抽

    2

    1答えて

    DLLからエクスポートされた関数を呼び出すときに、関数ポインタをGetProcAddressで取得すると、アプリケーションがクラッシュしました。 私はdependencywalkerを使って、エクスポートされた関数の名前が正しいかどうかを調べました。 GetProcAddressから返されたアドレスはnullではありません。私はそれが呼び出し規約と関係があることはほとんど確信しています。私は__c

    1

    2答えて

    Firemonkeyフレームワーク経由でDelphi XE2を使用してプラグインシステムを作成しようとしています。問題は、GetProcAddressが宣言されていない識別子であるというエラーが発生していることです。私がVCLプロジェクトでGetProcAddressを使用しようとすると、すべてうまく動作するので、GetProcAddressとFiremonkeyアプリケーションで使用する方法につ

    2

    2答えて

    サードパーティのDLLファイルを自分のアプリケーションに統合する必要があります。DLLの.DLLと.pdfドキュメントしかありません。私はそれがコーディングに行われている方法を知っていただきたいと思い、http://www.whiteboxrobotics.com/Support/pdf/PC-BOT_dotNet_v1.0_documentation.pdf 私はツールボックスにドラッグすると、

    2

    2答えて

    明示的にライブラリをロードするためのきれいな方法を探しています。ほとんどの場合、私はLIBとDLLのペアを持っているので、LIBはすべての "load stuff"を扱い、私はdllの関数を直接呼び出すことができます。明示的にこれを行うとき、私は次のようなものを実行する必要がありますLoadLibrary関数(場合 HMODULE libA = LoadLibrary("dllA.dll"); /