实际上这个问题很多情况下是由于路径设置的问题引起的,“CL.exe”是VC使用真正的编译器(编译程序),其路径在“VC根目录VC98Bin”下面,你可以到相应的路径下找到这个应用程序。
是这样,你在新建VC++工程的时候,其中有一项是选择将MFC库作为共享的DLL还是静态的DLL。
因为MFC程序在运行时需要一些DLL文件的支持,你从集成开发环境下编译运行时,有默认的路径来调用这些所需的DLL,因此运行不会有问题。
而当你单独运行文件夹下的可执行程序时,如果一开始选择的是作为共享的DLL,则就会因为可执行程序的当前路径下没有所需的DLL文件而无法运行。解决方法:一种是打包程序,生成程序的安装包,就像商业软件一样。
另一种就是采用作为静态的DLL方式,即将程序要用到的库集成到生成的exe程序中。
这样程序会稍稍大一点点,相当于一个绿色软件。
你可以点击工程菜单下设置菜单项,常规选项卡,选择作为静态的DLL,重建工程就可以了。