• 締切済み

CE6.0のスクリーンキャプチャーの方法

お世話になります、fujicafeです。 CE6.0で動かしている組み込みマシンのマニュアルを作成するためにスクリーンキャプチャをしたいと思っているのですが、通常のPCのようなPrintScreenが出来ず、インターネットでもいろいろとフリーソフトを検索したのですが、どうもソフトが古いらしくOSのヴァージョンに対応していないためか、うまく動作出来ません。 CE6.0でスクリーンキャプチャする方法や、それができるソフトをご存じの方がいらっしゃいましたら、教えて頂きたいです。 よろしくお願いいたします。

みんなの回答

回答No.1

 こんばんは。 ・CE6.0でスクリーンキャプチャする方法  以下を参照にwin32apiの種類をwindows CEの範囲内に留めていますが、此れで出来ませんか。  http://msdn.microsoft.com/en-us/library/aa132474.aspx #include<windows.h> #include<stdio.h> //DIBのセーブ static bool Save(LPCTSTR pszFileName, HBITMAP hDIB) { //ファイルを開く FILE* pf = ::fopen(pszFileName, TEXT("wb")); if(pf == NULL) return false; //DIBから情報を取る DIBSECTION dib = {0}; ::GetObject(hDIB, sizeof(dib), &dib); //ファイルヘッダ部の設定 BITMAPFILEHEADER bmfh = {0}; bmfh.bfType = 'B' | ('M' << 8); bmfh.bfOffBits = sizeof(bmfh) + sizeof(dib.dsBmih); bmfh.bfSize = bmfh.bfOffBits + dib.dsBmih.biSizeImage; //ファイルヘッダ部を書き出す ::fwrite(&bmfh, sizeof(bmfh), 1, pf); //DIB情報を書き出す ::fwrite(&dib.dsBmih, sizeof(dib.dsBmih), 1, pf); //ビットイメージを書き出す ::fwrite(dib.dsBm.bmBits, dib.dsBmih.biSizeImage, 1, pf); //ファイルを閉じる ::fclose(pf); return true; } //24BIT DIBの作成 static HBITMAP CreateDIB(HDC hDC, DWORD dwWidth, DWORD dwHeight) { BITMAPINFOHEADER bmih = {sizeof(bmih)}; bmih.biPlanes = 1; bmih.biBitCount = 24; bmih.biCompression = BI_RGB; bmih.biWidth = dwWidth; bmih.biHeight= dwHeight; LPVOID pvBits = NULL; return ::CreateDIBSection(hDC, (LPBITMAPINFO)&bmih, DIB_RGB_COLORS, &pvBits, NULL, 0); } int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { //デスクトップのデバイスコンテキストを取る HDC hDCScreen = ::GetDC(NULL); const DWORD dwWidth = ::GetDeviceCaps(hDCScreen, HORZRES); const DWORD dwHeight= ::GetDeviceCaps(hDCScreen, VERTRES); const DWORD dwBPP = ::GetDeviceCaps(hDCScreen, BITSPIXEL); //デスクトップの大きさを元にDIBを作成する HBITMAP hDIB = ::CreateDIB(hDCScreen, dwWidth, dwHeight); HDC hDCDIB = ::CreateCompatibleDC(hDCScreen); ::SelectObject(hDCDIB, hDIB); //DIBにデスクトップを複写する ::BitBlt(hDCDIB, 0, 0, dwWidth, dwHeight, hDCScreen, 0, 0, SRCCOPY); ::ReleaseDC(NULL, hDCScreen); ::DeleteDC(hDCDIB); //DIBをファイルにする if(!::Save(TEXT("screenshot.bmp"), hDIB)) { //失敗 } //DIBの解放 ::DeleteObject(hDIB); return 0; }

関連するQ&A

  • スクリーンをキャプチャしたい

    (PrintScreenキーを押したときのように)スクリーンをキャプチャしてクリップボードにコピー(そして画像ファイルとして保存)したいと希望しております。 (スクリーンをキャプチャするソフトも作られているようですが)スクリーンのキャプチャは、(1)どのような言語を使用して(できればJavaScriptで実現したいのですが)(2)どのように記述すれば実現できるのでしょうか。 恐れ入りますが、ご教授いただけるとありがたいです。 また、大変申し訳ありませんが、(私はperlとJavaScriptを多少使用したことがある程度の知識しかないため)(一)画面上のボタンをクリックしたら、(二)スクリーンをキャプチャし、((三)画像ファイルとして保存する)といった一連の動作について、具体的な記述方法を教えていただけると大変助かります。 お手数をおかけしますが何卒よろしくお願いいたします。

  • スクリーンキャプチャー

    地図情報、写真情報など画像保存不可の場合は頻繁にスクリーン保存をします。WinShotやPrintkeyなどのフリーソフトを使っていますが、画質的に今一不満です。もっと画質のよいフリーのスクリーンキャプチャーソフトを探していますが、皆さんはどんなソフトをお使いですか?

  • 画面のキャプチャー

    画面をキャプチャーするのに、 全体は、PrintScreen アクティブなウィンドウは Alt + PrintScreen はできました。 今回行いたいのは、IEの中でアクティブなウィンドウ内のスクロールしなくては見えない部分まで、キャプチャーをしたいと思っています。 Alt + PrintScreen では、右端と下が切れてしまいます。 このような、キャプチャーができるフリーソフトはございますでしょうか? osはwindowsXPです。 よろしくお願い致します。

  • キャプチャソフト

    PCの操作マニュアルを作る機会が多々あります。 いつもは「PrintScreen」で画面のハードコピーを取り、エクセルに貼り付け、画像の切り貼りをして、説明文や注釈を入れています。 このような作業を楽にこなせるフリーのソフトは何かないでしょうか? 色々自分で探してみたのですが、単純に画像をキャプチャするソフトはあるのですが、そこに説明文を入れたり、矢印を入れたりとといった機能が付いた物が中々ありません。 もし、そのような多機能なキャプチャソフトがありましたら、是非教えてください。

  • スクリーンショットがとれなくなった

    Vista Business 32bit を使っていますが、とある日からスクリーン ショットがとれなくなりました。 Easy Capture や LightScreen といったソフトを使用していたので、 最初はソフトの不具合かと思ったのですが、キーボードのPrintScreenでも 不具合がでます。添付画像に、PrintScreenでキャプチャして画像ソフトに コピペしたスクリーンショットを乗せます。 この状態で、Alt+PrintScreenでアクティブウィンドウのキャプチャを すると、キレイにアクティブウィンドウだけがクリップボードに コピーできます。 グラフィックドライバは、GeForceの178.24~最新まで試してみましたが、 いずれも状況は同じでした。 原因としては何が考えられるでしょうか? あるいは、調べるためにはどこから手をつけた方がよいでしょうか?

  • 画面キャプチャで

    画面キャプチャをするときに、Print ScreenやALT+PrintScreenで 取れるのですが、マウスポインタも一緒にキャプチャできる使いやすい フリーソフトを探しています。  1つだけ見つけることができたのですが、使い勝手がよくありませんでした。 (名前忘れてしまいました。) そういったマウスポインタもキャプチャできる使い勝手のよいフリーソフトを 知りませんか?

  • スクリーンキャプチャーソフト

    現在、デスクトップでゲームなどをやっている際の動作を 動画形式で音も同時にキャプチャー出来るソフトを探しています。 今までフリーでいろいろ試したのですが、録画中は極端に動作が重くなったり、音とやっている動作が遅れてたりと 未だ良いものが見つからずです。 動作が極端に重くなるのはスペックの問題もあるのでしょうか。 特にその点問題なければ、音も録音でき、極端に重くならず 音ズレ等の問題のないといった優れたキャプチャーソフトがあったら ご紹介願えませんでしょうか。 お手数お掛けしますが、宜しくお願い致します。

  • キャプチャソフトだとスクリーンショットがぼやける

    現在スクリーンショットをフリーのキャプチャソフトでとっているのですが、 画質を100にしても何故か元の画面と色が違ったり文字がぼやけてしまいます。 (複数のキャプチャソフトを使ってみましたが同じでした) 一方PrtScでとってペイントなどに貼り付けて保存すると、 元の画面と同じような綺麗なスクリーンショットがとれます。 ですが、この方法だといちいち画像を保存する手間が必要なので 出来ればキャプチャソフトでもこの画質でとれるようにしたいです。 なにかパソコン上の設定を変えればソフトでも綺麗に取れるのでしょうか。 以前は気にならなかったので、ハード面で何かが消耗したりして画質が悪化しているのかとも考えて調べてみましたが、 検索では思ったような文献がありませんでした。 OSはXPです。 アドバイスよろしくおねがいします。

  • 3dmark2001でスクリーンショット

    3DMark2001でスクリーンショットを取りたいのですが、PrintScreenキーを押しても出来ないし、いくつかフリーソフトを試してみたのですが、それでも出来ません。 どうにかとる方法は無いのでしょうか?

  • 画面以上の大きさのスクリーンをキャプチャーしたい。

    ここに使われる「キャプチャー」とは動画のキャプチャーじゃありません。 スクリーンショットに使われる「キャプチャー」をさしています。 さて、本題に入ります。 「キャプチャーしたい画像を開いて、"Print Screen" を押して、ペイントを開いて貼り付ける。」 このやり方は誰でもやっている方法です。 これだと、小さい絵だと全く問題ないのですが、画面より大きい絵をキャプチャーしたい時は、一旦無理やり画面に収まる大きさにして、それから"Print Screen"を押す。 これでもいいんですが、これだと、本来よりも粗い解像度でキャプチャーされるんです。 言ってる意味分かっていただけると思います。 キャプチャーしたいものは、jpgだったら、わざわざこういう所に出しません。 pdfやhtml、ときにはワードやエクセルもあります。 これができるソフトって何かありますでしょうか? できたら、フリーがいいです。 よろしくお願い致します。