- PR -

C#→ASP.NET 時のMFC_DLLコールの方法

投稿者投稿内容
しん
会議室デビュー日: 2003/11/29
投稿数: 7
お住まい・勤務地: 埼玉県川口市
投稿日時: 2003-12-04 09:17
返答ありがとうございます。
関数の中身は、
return( MessageBox( NULL, strMsg, "test", MB_OK ) );
と書いてあるだけのプログラムです。。
よろしくお願いします。
Jitta
ぬし
会議室デビュー日: 2002/07/05
投稿数: 6267
お住まい・勤務地: 兵庫県・海手
投稿日時: 2003-12-04 09:27
引用:

しんさんの書き込み (2003-12-04 09:17) より:
関数の中身は、
return( MessageBox( NULL, strMsg, "test", MB_OK ) );
と書いてあるだけのプログラムです。。


おめでとうございます。ちゃんと動いています。「見えないところ」に表示されたメッセージボックスは、あなたがOKボタンをクリックするのを待っています。

アメリカンなメッセージですみません。


 よく考えてください。「今は」、サーバとクライアントが「同じ」ですよね。でも、実際の環境では、「サーバ」と「クライアント」は「違う」マシンで、「遠く離れて」いるのではないですか。その上で、人がディスプレイを見ているとは限らない「サーバ」の上にメッセージボックスを表示させ、かつ入力を待っているのです。

 ASP.NETのワーカプロセス、.aspxファイルを解釈し、付随するDLLを実行しているプロセスは、ASPNETというユーザ権限で実行されています。したがって、メッセージボックスもASPNETというユーザのウインドウに表示されています。

 とりあえず、該当Webアプリケーションではあなたのアカウントで実行するように偽装すれば、メッセージウインドウは表示されるようになると思います。偽装の方法はInsider.NETまで戻って、記事を探してください。けれども、上に書いたことをよく考えてください。

↑↑ん?テストか。テストだからわかりやすい方法…と考えたのがあだになりましたね

[ メッセージ編集済み 編集者: Jitta 編集日時 2003-12-04 09:31 ]
しん
会議室デビュー日: 2003/11/29
投稿数: 7
お住まい・勤務地: 埼玉県川口市
投稿日時: 2003-12-04 11:04
!!!! すみませんでした。。 !!!!
よく考えれば、わかる話でしたね。。
今日は見ることができませんが、週末に再チャレンジしてテストしてみます。
ありがとうございました。
しん
会議室デビュー日: 2003/11/29
投稿数: 7
お住まい・勤務地: 埼玉県川口市
投稿日時: 2003-12-07 17:37
返答遅くなり申し訳ありません。。

やっと、コールすることができました。
ありがとうございました。
結局は皆さんの言うとおり、Webの考え方を忘れてました。
普通に、intだけを返すようなテストプログラムを作ってみたら、
普通に出来ました。
どうもお騒がせしました。

スキルアップ/キャリアアップ(JOB@IT)