以前、下のような質問をさせていただいたものです。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=1748227
EXE(実行形式)で既にあるプログラムをDLLとして移植したいのですが、うまくいきません。うまくいかない事象は上のページで質問しましてまだ解決しておりません。(ウインドウ内にCreateDialogを用いてダイアログを表示させようとしても表示されない)
実行形式で組まれたプログラム(ソース)をDLLに移植する時の一般的な方法、注意すべきところ、そのままソースを移植してもダメな理由(EXEとDLLの違い)などありましたら教えてください。同じようなことをした経験のある方など、よろしくお願い致します。
No.3ベストアンサー
- 回答日時:
ダイアログのリソースがDLLにないのに、DLLのインスタンスを渡してもリソースが見つかるはずがないので、リソースのある方のインスタンスハンドルを渡さないとだめですよね。
リソースはどちらにありますか。
リソースがどちらにもないのに、いずれかのインスタンスを渡してもリソースが見つかるはずがないので、リソースをいずれかに追加しないとだめですよね。
リソースは追加されていますか。
リソースのIDが異なっているのに、そのIDで探しに言っても正しいリソースが見つかるはずがないので、正しいリソースハンドルを使わないとだめですよね。
追加しているリソースのIDは、ヘッダのものと一致していますか。
(EXEとDLLは別プロジェクトになりますが、正しく一致していますか)
この回答への補足
>追加しているリソースのIDは、ヘッダのものと一致していますか。
一致しているのですが、表示されません。よろしくお願い致します。
No.2
- 回答日時:
hInstance に渡されているハンドラは「誰の」ハンドラですか?
ExeからDLLをロードした場合、ExeのハンドルとDLLのハンドルは違うのですが、どちらを渡していますか。
そして、対象ダイアログのリソースを持っているのは、
ExeとDLLのどちらですか。両者は一致していますか。
# あっていると思っても、ためしに別のハンドルを渡してみたら表示されたりしませんか。
No.1
- 回答日時:
以前の質問に対する回答でほぼ解決できそうに見えますが、#3の方のご指摘などは確認されてますか?
> 実行形式で組まれたプログラム(ソース)を
-- snip --
> よろしくお願い致します。
リソースなどを参照する際のインスタンスが異なる、
スレッドが違う、など。
たぶん、具体的なコードを提示してもらった方が早いです。
この回答への補足
具体的にコードを出そうと思います。
extern "C" int WINAPI IOPI_Init(HINSTANCE hInstance, HWND hRootWnd, HWND hParentWnd)
{
…
hAppModule=(HMODULE)hInstance;
…
HWND hDlgWnd = ::CreateDialog(
hAppModule,
MAKEINTRESOURCE(IDD_DIALOG1),
hWnd,
(DLGPROC)MyDlgProc);
…
以上、このようなところです。よろしくお願い致します。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- ノートパソコン .dllファイルがありませんと表示される 5 2023/04/30 03:03
- その他(OS) OBSが起動できません 3 2022/03/30 12:21
- 宇宙科学・天文学・天気 銀河のハビタブルゾーンを確率的セルオートマトンという数値的にシミュレーションした結果、「群島」の様な 2 2023/06/06 23:10
- その他(プログラミング・Web制作) IT初心者です 仕事で、vb.netで作成されたdllをvbaで呼び出すプログラムを作成しろと言われ 1 2023/03/27 08:22
- 政治 臓器移植の法律はアメリカと同じにするべきではないですか? 2 2023/02/11 14:03
- Windows 10 IT初心者です! powershellで以下のようなエラーが出ました オブジェクト参照がオブジェクト 1 2023/05/17 11:30
- 不妊 不妊治療で胚盤胞2個移植 1 2023/04/10 17:27
- フリーソフト cygewf-2.dllがない、と表示され、ダウンロードしたファイルが動作しない 2 2023/03/27 11:05
- Excel(エクセル) Excelのマクロについて教えてください。 4 2022/05/31 14:07
- PowerPoint(パワーポイント) ExcelのVBAコードについて教えてください。 3 2022/05/25 14:32
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
プログラミング、アーキテクチ...
-
ムービープレビュー時にエラー...
-
UWSCのBTN関数について。
-
VBAで改行の入ったデータの正規...
-
FlashからPHPへの変数の渡し方...
-
pythonの画像の貼り付けについて
-
アセンブリ言語のcasl2について...
-
else if文の順序を変えることに...
-
MovieClip(root)について
-
テキストボックスにセルの値を...
-
アクションスクリプト2.0 奇数...
-
C言語でのマウスを移動とマウス...
-
リッチテキストボックスでの書...
-
縦横比率のを変えずに画像のサ...
-
五芒星は、悪魔崇拝とどういう...
-
attachMovie後のプロパティ参照
-
四乗根を英語で言うと・・・
-
ActionScript3.0にて描画させた...
-
Simulinkのサブシステムの完全...
-
シェイプトゥイーンをかける順...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
プログラミング、アーキテクチ...
-
【VB.NET】別Formのボタンが押...
-
VB6.0で、フォームから、別のフ...
-
DataTableの件数を取得したい
-
VB6.0のHideのバグ?
-
CreateDialogについて
-
XMLでJPEGスライドを作成_表示...
-
変数の利用方法
-
インスタンスとポインタ
-
ウインドウハンドルとインスタ...
-
フォームの生成と破棄
-
【ActionScript】コンボボック...
-
Flash ステージに初期配置したM...
-
IBM Watson Text to Speechを始...
-
背景画像が拡大縮小しつつ、大...
-
flashで音を消す設定について
-
ムービープレビュー時にエラー...
-
buttonの色を変えたい
-
Python でシャットダウンのコマ...
-
Flashの画面をJPEG画像にしてメ...
おすすめ情報