本帖最后由 sirjean 于 2011-02-03 11:47:19 编辑

解决方案 »

  1.   

    可使用inno setup,installshield等工具
    ilasm打包资源文件
    http://topic.csdn.net/u/20101016/21/5390a537-4fb7-4caf-8a42-b7785d69f37c.html
      

  2.   

    不建议使用 C# 制作安装程序。因为 C# 依赖 .NET Framework,用 C# 写的程序在没有 .NET 的机器上无法自举。QQ和迅雷的安装程序是使用 NSIS 这个软件开发的。它是一个开放源代码的安装制作软件,位于 http://nsis.sourceforge.net/Download。另外 InstallShield 和 Inno Setup 也很不错。
      

  3.   

    呵呵,谢谢上面两位,关于2楼说的,我知道C#写的程序需要在装有.NET Framework的客户机上才能运行,但是我想自己尝试着写一个安装包,把所有的资源文件全部集成到自写的exe程序集中,然后再进行释放!有什么好的方法和思路没?
      

  4.   

    关于1楼说的用ilasm打包资源文件,我到你发的帖子里看了下,上面说用ilasm打包超过10MB的文件就不会成功,而我的资源文件有5G!不知道怎样打包,是不是有方法可行?
      

  5.   

    这不需要好的方法和思路。因为 .NET Framework 已经为读取文件等二进制资源提供了标准的方法调用。你有兴趣查阅 MSDN 照着做就可以了。
      

  6.   

    5GB 不适合单独做成一个文件。因为这么大的文件无论是下载还是放入 DVD-ROM 介质都太大了。甚至 FAT32 这样的文件系统,都不能支持超过 4GB 的单个文件。
      

  7.   

    大数据量不适合否打包
    介质等是存储不了,FAT32最大支持的分区为2TB 在windows 下多只支持32GB 单个文件最大为4G
      

  8.   

    新建一个安装工程,然后把.net framework打包进去。
      

  9.   

    NTFS能支持4GB的文件啊...还有我想9楼还不明白我的意思!
      

  10.   

    安装也就是把文http://topic.csdn.net/u/20110203/11/32471ceb-759c-467e-870b-75558130ac62.html?36217件还有一些其他信息,写进安装的那个计算机。用什么方式copy都可以随便自己写。
      

  11.   

    CreateFileMapping , OpenFileMapping, MapViewOfFile, UnmapViewOfFile 和 FlushViewOfFile用这些函数可以实现大文件读取呀
      

  12.   

    我觉得这是白费劲啊
    你自己写的发布程序在vista以上的系统可能还能跑
    但是万一到了没有安装.net framework环境的机子上连执行都不可能。而且C#对framework的依赖当用vs自带的打包程序打包的时候会自动将依赖项打包进去,自己开发的估计很难做到完整打包。
      

  13.   

    可以联系我,我再05年的时候就是和你一样的想法,然后写了个。我可以把源码都传给你,加我QQ:304074857,验证信息写上是CSDN上要安装程序的就行。