使用VS编译的程序都是单个的exe程序,或者也可以编译成dll,那我们平时安装的程序大部分都是有很多的安装文件在安装目录下,这些文件在编写程序时是怎么弄进去的?如果是封装时加进去的,那这些文件该如何和主程序建立联系呢?比如,如果需要使用某个类,直接把这个类包含到资源中不就可以了吗,为什么要在安装目录下产生那么多文件呢?单个可执行程序不足以使用吗?

解决方案 »

  1.   

    我是这样理解的,EXE包含了你需要执行的所有逻辑操作,但是并不包含你操作的对象和资源,比如exe可能需要读取自己的配置文件ini,比如exe可能会要用到第三方库(就是别人为你写好的dll、exe等等等等),你一个exe要执行,不单单只是一个文件而已,会涉及到很多东西,只是一些基本的东西都在操作系统里面而已,比如/system32下的dll文件之类
      

  2.   

    《Windows PE权威指南》
    《程序员的自我修养——链接、装载与库》
      

  3.   

    没太明白。有些exe要依赖dll才能正常运行,不很正常么
      

  4.   


     你如果写个游戏,就一个裸exe吗?资源难道也打包进exe吗?最好的办法当然是作为资源文件。
      

  5.   

    问题1/2 . 
    参考https://blog.csdn.net/l357630798/article/details/52780961问题3/4.  
    假设如果把所有的类或功能都放到一个工程里面,那么这个工程会非常臃肿且不利于扩展和维护,分成很多的dll可以很好的实现模块化编程。
    其次,一个大中型软件一般都是几个人同步开发的,如果用一个工程,是没法做到同步开发及节省开发时间的。
      

  6.   

    EXE是一个程序是入口点,比如一个房子的门
    把图片,MP3,视频,...增加进去:相当于电视,音响,画壁,
    打开一个窗口,相当于一个房间,
    这么个理解吧
      

  7.   

    “”“在什么情况下会产生一系列安装目录文件”
    需要 运行 “安装程序 installer”