开始学习核心编程
来源:互联网 发布:淘宝商品分为哪些类目 编辑:程序博客网 时间:2024/05/18 01:49
转眼c已经放下N+1年了,去年就想拾起来,一直拖到了现在,幸亏基本语法尚未忘记。写此blog以鼓励和监督自己:
核心编程第一章[程序错误处理]:在此需要感谢/kf§口吕品提供的帮助,好淫呐!
以前看此章基本略过,现在因为是真要学习,所以...
int WINAPI _tWinMain(HINSTANCE hinstExe, HINSTANCE, PTSTR pszCmdLine, int) {
HWND hwnd = FindWindow(TEXT("#32770"), TEXT("Error Show"));
if (IsWindow(hwnd)) {
// An instance is already running, activate it and send it the new #
SendMessage(hwnd, ESM_POKECODEANDLOOKUP, _ttoi(pszCmdLine), 0);
} else {
DialogBoxParam(hinstExe, MAKEINTRESOURCE(IDD_ERRORSHOW),
NULL, Dlg_Proc, _ttoi(pszCmdLine));
}
return(0);
}
此代码J君写的的确简略,启动函数int WINAPI _tWinMain(),启动后检测有无实例运行(FindWindow()),然后(IsWindow(hwnd))判断,有则传递参数,无则创建窗体,其中创建窗体十分特别,用了DialogBoxParam(),学了一招,c++对于窗体处理起来,如果用api进行编程的话都要自己手工写,就不如C#了,但是这些都是模版性的东西,一次输入,以后用即可,一劳永逸。而J君用此DialogBoxParam()似高手之出招,无章可循,学习学习。
原来对于SendMessage,心存惴惴,因为许多程序,屏蔽了外来线程传递的消息,现在自己写接受外来send的程序,嘎嘎全部都由自己来控制了,当家作一次主人。感觉甚好。此例代码用了SendMessage传递了一个参数,都是自己的东西,这个传递可以扩展到很多。而里面又用了MAKEINTRESOURCE这个宏定义来转换资源,此为C招式之根本,资源显示出很多要用到此一招。ttoi呵呵,在tchar.h中的宏.如果是unicode,它为
int _wtoi( const wchar_t *string );
否则为
int atoi( const char *string );
根据string 得到一个 int而已,(CString)
DialogBoxParam 显示了id为IDD_ERRORSHOW的资源,并且帮定了其事件处理过程Dlg_Proc,把_tWinMain的参数pszCmdLine传递其中可谓妙矣。
研究此启动过程用时不少,在此记录,备查。
- 开始学习核心编程
- 开始学习《windows核心编程》
- windows核心编程学习
- python核心编程学习
- Python--核心编程学习
- 开始学习BCB编程
- 开始学习Shell编程
- 开始学习.NET编程
- 开始学习串口编程
- 开始学习网络编程
- 开始学习编程了。
- 开始学习WEB编程
- 开始学习LINUX编程
- 开始学习php编程
- 刚刚开始学习编程!
- 怎样开始学习编程?
- 学习编程旅程开始
- 开始学习web编程
- 字符集的编(解)码的总结
- COGNOS安装笔记
- 静态成员声明,定义
- 腾讯笔试题一道(max宏定义,不使用大于,小于,if语句)
- frame,iframe,frameset 的区别
- 开始学习核心编程
- ASP.NET 2.0 中的窗体身份验证
- 输入框里有文字提示
- 权限
- MAP
- ASP.NET,datagrid,textbox datagrid中隐藏列之后无法获得其中textbox值的问题
- SQL 触发器
- EditPlus的使用技巧(一)
- MIME TYPE 大全