//我想请教,在VB打包时,DLL,OCX文件应安装在系统文件夹中,还是程序文件夹中. 我试过放在不同的地方,直接影响到程序能否正常运行,另外,对于DLL,OCX这些文件,不能向上兼容吗?就是说,比如我在WIN98下开发过一段程序,后来挪到了WIN2000下继续做,引用的文件版本是不一样的,那么我在给程序打包时,新旧版本的DLL文件都要包括进去吗? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 如果是ActiveX DLL就必须引用且注册(如果是系统自带的那就不必了)一般的Win32 DLL可以直接使用,但是如果你使用系统DLL,要注册平台变化,部分函数在部分平台里面是不能用,比如2000/xp平台的透明函数,98下就不能用,其他的都兼容 系统DLL切记不要打包!!!将导致系统崩溃!!!至于msvbvm60.dll,comctl32.ocx等vb带过去的东西可以 如果安装在98下,DLL,OCX这些文件须安装到x:\windows\system目录下。如果是安装在XP下,DLL,OCX这些文件须安装到x:\WINDOWS\SYSTEM32目录下。 //系统DLL切记不要打包!!!将导致系统崩溃!!!头一次听说,为什么呢?什么原因造成的?打包后那些文件是丢失了还是被破坏了 //头一次听说,为什么呢?什么原因造成的?打包后那些文件是丢失了还是被破坏了我所谓的系统DLL是说kernal32.dll,gdi32.dll,user32.dll,comctl32.dll,advapi32.dll,shell32.dll等等,这些dll我想使用api谁都该知道吧!你敢把这些都打包吗? 1.VB開發的程序,最好要帶上vb的運行庫,因為您不能保證別人的機器上一定安裝了.並且是要附帶最新版本的,免得萬一覆蓋了用戶機器上的新版本DLL,就不知道會出現甚麼事情了,雖然現在的安裝程序在部署dll,ocx的時候都會自動檢查文件的版本,如果比安裝程序中附帶的DLL版本高,就不覆蓋,否則覆蓋,但是,萬一..... 壇子裡面有很多關於VB運行庫包含那些文件的帖子,你搜索看看.2.VB中使用到的控件和引用到的DLL等文件要一並打包,不要猜測用戶的機器上有,萬一沒有呢?另外,需要注意的是如果是VB的標準控件,要安裝在系統目錄下,如SYSTEM32,以免在用戶的機器中重複註冊,引發不必要的版本衝突,如果只是自己的控件,dll,如果只有自己的程序使用,可以放在自己的程序目錄下,但是最好還是放在系統目錄中,目的還是說萬一那一天用戶又安裝了自己寫的另一程序,而這個程序使用了一個更高版本的同樣控件.不確定阿. 所以最好都是放在系統目錄下,不容易出問題的.3.使用到的系統api等文件,不要打包,因為這是用戶安裝了WINDOWS之後一定會有的文件,不用你操心,而且你要是自做聰明,覆蓋了系統文件,或者你的程序在卸在的時候,一並把系統文件給卸在掉了,那用戶一定會跟你急的. 你用什么打包工具,你用installshield或VB自带的打包工具,都会把dll,ocx文件自动放在系统目录或应用程序目录中,如果不是windows自有的dll或ocx,则建议你都把它们放在应用程序目录中,其余的按默认方式存放就可了。 最简单的文件复制,为何说“错误的文件名或者代号”?? 求一个控件,高手请进! 急等!!!我定义了一个文本文件,请问高手,用VB怎么读入到一个数组里!!多谢! 菜单编辑如何读入ini文件 这个API函数应该给它传递什么参数? 高分求网上考试系统 vb+mssql vb是如何获得计算机名的? 请问大家用vb做程序时都是用什么控件? 哪位能告诉我如何在VB程序中实现关闭计算机? 关于窗口尺寸的两个问题 学习用VB做COM+开发有那些好的资料? 求某类商品的总和,在线等待!
一般的Win32 DLL可以直接使用,但是如果你使用系统DLL,要注册平台变化,部分函数在部分平台里面是不能用,比如2000/xp平台的透明函数,98下就不能用,其他的都兼容
至于msvbvm60.dll,comctl32.ocx等vb带过去的东西可以
如果是安装在XP下,DLL,OCX这些文件须安装到x:\WINDOWS\SYSTEM32目录下。
头一次听说,为什么呢?什么原因造成的?打包后那些文件是丢失了还是被破坏了
我所谓的系统DLL是说kernal32.dll,gdi32.dll,user32.dll,comctl32.dll,advapi32.dll,shell32.dll等等,这些dll我想使用api谁都该知道吧!你敢把这些都打包吗?