编好的程序如果做分发,可以编译为p代码吗?在客户的机器运行时与编译为本机代码区别何在?
-----------------------------------------------------------------------------------
1.两种编译方式,对于vb运行库的要求一样吗?是不是编译为p代码并且发布到客户的机器上时,要比编译为本机代码多打包些支持文件呢?
2.两种编译方式兼容性哪种更好些呢?

解决方案 »

  1.   

    试着回答一下:编好的程序如果做分发,可以编译为p代码吗?
    ==可以。实际上缺省都是编译为p-code的。在客户的机器运行时与编译为本机代码区别何在? 
    ==编为native code通常有性能上的优势。但也不一定。其它的问题回答不上来
      

  2.   


    Ding.........不过,我的机子上好象缺省是 Native Code  ^_^
      

  3.   

    无论是否 P-Code 编译,msvbvm60.dll 始终是需要发布的,这个 dll 不仅仅用于 P-Code 解释。
    兼容性完全一样,这只是 VB 内部执行方式的不同。就像布置你一个作业,你用笔记本还是台式机完成对最后发邮件交作业没有区别。
      

  4.   

    p代码的区别是
    只是在link连接的时候用了不同的连接器
    有这样一个笑话说制作vb6的时候,微软为了省力,直接把vc6的连接程序拿过来用了于是就有了本机代码和pcode的区别了其实你可以试下就知道,用vc6的vlink.exe照样可以连接vb6的程序
      

  5.   

    link 的功能本来就单一,没必要做两个。
    难度烧番茄蛋汤和冬瓜汤非要用两种锅子吗?
      

  6.   

    我的LINK.EXE是从VS2005里取出来的.......于是默认一个窗体的空工程以本地代码编译后为7.5K.....
      

  7.   

    问题在于
    pcode的link程序和本地代码的link程序是不同的不信你可以删除掉vb目录下的link.exe本地代码生成不了了pcode可以生成
      

  8.   

    这个文件可以随便更换呀?据说VB6的 Link.exe 是从VC6中抽取的。我刚才看了一下,VB6.0 企业版和 VC6.0 企业版的应该完全一样:
    文件版本:6.00.8168.0
    文件大小:452 KB (462,901 字节)
    最后修改时间:1998年6月25日, 0:00:00VB6.0 迷你版的是:
    文件版本:6.0.8447.0
    文件大小:452 KB (462,901 字节)
    最后修改时间:2004年4月25日, 15:02:38
    说不定跟企业版的还是一样的。
      

  9.   


    嘿嘿~~~~~~~
    我刚才的试验结果是:Link.exe 是必须的。生成P代码不用 C2.exe,而生成 Native Code 必须要有 C2.exe 。
      

  10.   

    Native Code 编译,Link 代码段+数据段
    P-Code 编译, Link 代码段+普通数据段+(内容为P-Code的)数据段
    Link 就像装箱工人,对于要装的是水果还是果汁没有本质区别。