こんにちは!
プログラミングについての質問です。
Windowsプログラミングについて詳しい方、
ぜひ助言をください!!
文章が長くなってすいません。
コンソールで実行するWindowsプログラミングを作成中です。
例えばコンソールでBMの画像を取ることや、
ウィンドウを閉じることを命令できるプログラミングを
作りたいと考えています。
つまり主導権みたいなものをWindowではなく
コンソールが持つ仕様にしたいのです。
以下のプログラミングはとりあえず準備として、
main()で作成したものです。
Cygwinでコンパイルは確認済みなのですが、
実行したときにcore dumpedと出てしまいます。
WinProc関数処理をしていないせいかと思うのですが、
コンソールでの処理を考えるとイベントの必要ないので
付け足してもいいのかどうかわかりません。
このような仕様のWindowsプログラミングを扱っている
HPを知っている方がいらっしゃいましたら
それもぜひ教えてください!
お願いしますm(__)m
/**************************************/
#include <windows.h>
#include <stdio.h>
HINSTANCE hInst;
char szClassName[] = "bitmap"; //ウィンドウクラス
int main(void)
{
HWND hwnd; //メインウィンドウのウィンドウハンドル
WNDCLASS wc; //ウィンドウクラス登録用の構造体
//インスタンスハンドルの取得
hInst = (HINSTANCE)GetModuleHandle(NULL);
//ウィンドウクラスの定義
wc.style = 0;
wc.cbClsExtra = 0;
wc.cbWndExtra = 0;
wc.hInstance = hInst;
wc.hIcon = LoadIcon(NULL, IDI_APPLICATION);
wc.hCursor = LoadCursor(NULL, IDC_ARROW);
wc.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
wc.lpszMenuName = NULL;
wc.lpszClassName = (LPCSTR)szClassName;
//ウィンドウクラスの登録
if(RegisterClass(&wc) == 0)
return 0;
//ウィンドウ作成
hwnd = CreateWindow(szClassName,
"bitmap window", //タイトルバー
WS_OVERLAPPED, //ウィンドウの種類
CW_USEDEFAULT, //x座標
CW_USEDEFAULT, //y座標
CW_USEDEFAULT, //幅
CW_USEDEFAULT, //高さ
NULL,
(HMENU)NULL, //メニューの有無
hInst,
NULL);
if(hwnd == 0)
return 0;
ShowWindow(hwnd, SW_SHOW); //ウィンドウの表示
UpdateWindow(hwnd); //ウィンドウの最初の更新
return 0;
}
|