嗯,我使用Visual C++ 2010 Express和我的MIDI音序器的安装应用的ResEdit 安装在Windows 7上排除故障的兼容性PCA - “此程序可能没有正确安装”
的Win32 API,没有MFC,一些自定义窗口和控制类和这样。
现在,我得到了Windows 7中,我党SETUP程序是破产了。
的Windows给我的OLE“难道这个程序正确安装?”啄。 这意味着我的安装程序有些问题。
我试着去弄清楚这可能是...
我见过这2个SO线程:
"This program might not have installed correctly"
"This program might not have installed correctly" message in Windows 7 RC
而曾经使我这些地方:
http://msdn.microsoft.com/en-us/library/dd371711(VS.85).aspx
http://msdn.microsoft.com/en-us/library/bb756937.aspx
http://msdn.microsoft.com/en-us/library/aa905330.aspx#wvduac_topic3
http://community.flexerasoftware.com/archive/index.php?t-189007.html
只有我使用注册表项是标准的卸载点和 协会的文件类型。
SETUP在程序文件\ pianocheater目录 中写入一个dat.cfg文件,指向所有应用程序的数据所在的位置。 (只是一个文本文件,其中有一个路径) (和一个用于该数据目录中的临时目录等等.cfg目录使用。)
所以我只从程序文件\ pianocheater后安装READING。
有人可以想到为什么Windows不喜欢安装? 源代码位于http://shazware.com/_etc/SETUP_PIANOCHEATER.cpp 它使用我的窗口库,控制类在精神上类似于mfc。 我也可以发送它的有用部分。
这对安装应用程序并不是太糟糕。 对于一个win32家伙/ gal应该是非常可爱的。
我可以uuuuuse一些he'p ...:/
噢,我要指出的是,围棋()的入口点,而不是主要的()。 DBG()只是做OutputDebugString(),看起来都运行得很好。 TStr只是一个大字符[MAX_PATH](我不会做Unicode)
而这个技巧可能是我在win7 64位上,但这是一个32位的应用程序。 虽然我很确定我正在为assoc和卸载点正确使用注册表。
那么,我应该做的清单xml的东西? 还是有更正确的方法来做事吗?
感谢了,
...史蒂夫
你为什么要编写自己的安装程序?为什么不使用工具来构建安装程序?该工具将会正确。 – 2011-06-03 20:02:08
好吧,我只是想自己做。这个应用程序是我的爱好,我只想知道安装程序是做什么的。 – 2011-06-04 15:21:54