人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

イーサネットで接続されたWindows2000端末を2台用意して、以下の処理を行おうとしています。 端末(1)…画面をハードコピーしbmp形式で保存するアプリケーション(自作)を入れておく。 端末(2)…telnetでマシン(1)にアクセスし、端末(1)の画面ハードコピーアプリケーションを起動する。この処理を行った際、どうもtelnet経由で接続して端末(1)のアプリを起動すると、BitBlt()でエラーとなり上手く動作してくれません。(telnetせず、端末(1)で起動する分には問題なく動作するのですが…。)画面のハードコピーするアプリケーションでは、Win32APIのCreateDC,CreateCompatibleBitmap,CreateCompatibleDC,SelectObject,BitBlt,GetObject,WriteFileを順番に呼び出し、デバイスコンテキストからbitmapイメージを作成しようとしています。telnetで接続した際のみエラーになる原因、またはこの現象の回避方法をご存知の方、いらっしゃいましたら、ご教示いただけますでしょうか??よろしくお願い致します…。

●質問者: yusa
●カテゴリ:コンピュータ 趣味・スポーツ
✍キーワード:BitBlt BMP Telnet Windows2000 アクセス
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● alcus
●20ポイント

http://www.forest.impress.co.jp/library/vnc.html

窓の社 - ソフトライブラリURLを変更いたしました

こういったソフトの利用ではどうでしょう。

◎質問者からの返答

VNCを使用する事も考えたのですが、キャプチャした画像のbmpファイルをGZIPで圧縮してtelnet接続している端末に転送するだけの処理なんです。

リアルタイムにデータを転送するわけではないので…。

お答え有難う御座いました。


2 ● watal
●20ポイント

http://www.sm.rim.or.jp/~shishido/hdcdisp.html

ディスプレイのデバイスコンテキスト

Win32API素人なので、全然間違っているかもしれませんが…

telnetせずに端末1で起動する場合は、コマンドプロンプトから起動して確認してますよね?

まず、端末1でlocalhostにTELNETして(SFUのtelnetサーバ使ってますよね)、そこで正常に取得できるか試してみると、問題の切り分けになるかもしれません。

また、デバイスコンテキストのハンドルが、ちゃんと端末1のDISPLAYから、端末1のファイルへの出力になってるかどうか、とか明示できるところはあるのでしょうか(素人判断ですみません)?

http://www.microsoft.com/JAPAN/developer/library/jpgdipf/_win32_...

MSDN Online Japan : File Not Found

Bitbltの説明です。

GetlastError文を使ってデバグできると書いてあります。

◎質問者からの返答

ご回答ありがとうございます!

>端末1で起動する場合は、コマンドプロンプトから起動して確認してますよね?

そうですね。本来はMKS ToolKit(C++ではない)で

作成した物なのですが、C++上で同様の事を行っても

現象は変わらないので、make環境の違いに依る物では

無いようです。

localhostにtelnetの件とGetLastErrorは未だ

試していないので、早速確認してみます♪

これで原因が特定ができれば問題解決なんですが…。


3 ● ネット素浪人
●20ポイント

http://www.mix.ne.jp/commandline.html

コマンドライン版 telnet の接続例

最近、win32 の世界から遠のいているので、外していたらごめんなさい。

socket の 転送モードは どうなっていますか。バイナリモードにちゃんと設定してみると言うのは如何でしょうか。

◎質問者からの返答

ご回答ありがとうございます。

残念ながら、socketは使用していないのです。

exe自体は単純にデスクトップの画像を取得して、

それをbmpファイルに落とすだけなので…。

リモートで起動したときだけ、CreateDCで取得した

ハンドルが毎回同じ値になっており、GetLastError

で詳細を取得すると、『ハンドルが無効』と言われて

しまって…。

ほかにも情報ありましたら、よろしくお願いします。

ありがとうございました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ