1

私は WinAPI プログラミングの初心者で、スクリーン キャプチャ用の Win32 アプリケーションを作成しました。プログラムを実行すると、カーソルがすぐに十字線に変わり、クリック アンド ドラッグして画面の一部をキャプチャし、ファイルに保存できます。

ただし、メイン メソッド (WinMain) を含まないようにプログラムを変更し、本質的にアプリケーション クラスではなくオブジェクト クラスに変換して、他のプログラムから関数を呼び出せるようにしたいと考えています。これを行う方法に関する適切なリソースを見つけることができませんでした.WinMainは内部で特別な機能を実行していると信じているため、メソッドの名前を単純に変更することはできません.

これに対処する優れたリソースやチュートリアルを提案できる人はいますか?

4

1 に答える 1

2

これを行うには多くの方法がありますが、最初に一歩後退する必要があります。

yopuは、あなたの「プログラム」(引き続きそのように呼びます)が呼び出されることをどのように期待しますか?どのパラメータとどのリターンタイプを使用しますか?

では、どのようなAPIを公開したいですか?ヘッダーのC++クラス?静的ライブラリのC++クラス?DLLからエクスポートされたAC関数?COMオブジェクト?

ライブラリ、DLL、またはCOMライブラリがどのように見えるかについては多くのサンプルがあります(これらのキーワードをグーグルで試してみてください)。

簡単な方法は、ライブラリまたはDLLプロジェクト(ほとんどのIDEには空のスケルトンを提供するウィザードがあります)をセットアップする可能性が高く、そこに残す必要のある関連コードを貼り付けて、公開された関数またはクラスから呼び出せるようにします方法。

より正確な答えは、「オブジェクト」がどの「フォーム」を持つべきかを決定した後でのみ与えることができます。

于 2013-02-21T11:11:31.097 に答える