第一个Win32应用程序

Posted 史昊

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第一个Win32应用程序相关的知识,希望对你有一定的参考价值。

  今天使用Visual Studio 2015,在教程的指导下开发了一个Win32窗口应用程序,在这个过程中遇到了两个问题:

  一、无法查找或者打开pda文件

    解决办法:(工具栏)调试->选项->常规->(勾选启用源服务器支持);调试->选项->符号->(勾选Microsoft符号服务器),完成!

  二、不能将const char*类型的值分配到LPCWSTR类型的实体(wndClass.lpszClassName = "DX11BookWindowClass";)

    解决办法:在字符串常量前面加上L(wndClass.lpszClassName = L"DX11BookWindowClass";),把字符串转换为宽字符集,相当于实现了强制类型转换。

  拓展:

  LPCWSTR是一个指向unicode编码字符串的32位指针,所指向字符串是wchar型,而不是char型。

  MSDN原文:

An LPCWSTR is a 32-bit pointer to a constant string of 16-bit Unicode Charactor, which may be null-terminated.

This type is declared as follows:

typedef const wchar_t* LPCWSTR;

  因为在VS2005以后,编码方式默认为Unicode,部分函数在使用时默认调用Unicode方式(函数名+W,exp:MessageBox+W=MessageBoxW),而非ANSI方式(函数名+A,exp:MessageBox+A=MessageBoxA)。

 

以上是关于第一个Win32应用程序的主要内容,如果未能解决你的问题,请参考以下文章

第一个Win32应用程序

Win32线程调度

使用片段的谷歌地图

win32编程里,ransMessage()和DispatchMessage()是干嘛的

python将文本转换成语音的代码

创建第一个c程序