VC6 SDK编程中使用XP样式,程序无法启动。

来源:互联网 发布:php自助建站源码 编辑:程序博客网 时间:2024/06/05 12:46

写了个简单的联网对时程序,以便校准电脑的时间(我的电脑的时间老是偏快,老毛病,从买来开始就有,不确信是不是纽扣电池的原因)。

 

程序写完,想给程序界面做个美化,使用 XP样式。使用一个xml配置,如下:

 

 

保存为应用程序文件名.manifest。可是无论怎么搞,程序总是运行不起来。问题是以前写过的程序都可以的,就这样一个简简单单的程序却不行。最后想想可能是动态链接库的问题,比较了两个程序(一个有xp样式、一个没有xp样式,都是sdk的,且都可以运行)运行后,用processExplorer查看加载的dll,比较加载的dll有哪些不同。最后发现一个很重要的dll,那就是“comctl32.dll”,这个dll如果没有在进程的地址空间的话,使用xp样式一定会失败的。

解决的办法就:WinMain函数开头加载comctl32.dll,LoadLibrary("comctl32.dll") 然后进程结束后,再FreeLibrary

原创粉丝点击