当前位置: 代码迷 >> 综合 >> MAPX5.0用SetupFactory打包
  详细解决方案

MAPX5.0用SetupFactory打包

热度:88   发布时间:2023-12-17 02:40:21.0

转贴来自:CAD|GIS空间站       http://cadgis.126.com

          由于前些日子有些朋友对MAPX打包有点问题,所以今天做个打包的教程,希望对大家有用。其实我也是参照资源大联盟的老公的打包说明来做的,只是我用的不是InstallShield打的包,我用的是setupfactory,应该来说这个要比专业的InstallShield简单多了,好了,不多说了,接下来我就对于我的《电子地图查询系统》打个包,做个演示。说明《电子地图查询系统》是用基于MAPX5.01用VB6语言开发的系统,没有涉及到数据库。

第一步:找全所有需要打包的文件。
需要打包的文件很多,我们先建个文件夹,把所有需要打包的文件放里面,比如我建的文件夹:F:/setup。打包的文件主要有
1.       MAPX文件
MAPX5.0文件夹下的所有文件(不包括data、MAPS以及程序示例的文件夹,当然也可以把MAPX5的帮助文件也删掉)
2.       程序所用到的控件和动态连接库
为了方便起见,我们在SETUP文件夹下建个SYSTEM文件夹,所有的控件和动态连接库都放这里。
由于用VB6开发,所以MSVBVM60.DLL是必不可少的。我用到的其他控件有Comdlg32.ocx、MSCOMCTL.OCX、TABCTL32.OCX。把这些都复制到SYSTEM文件夹。
可以自己检查用了什么控件,控件在什么位置(一般都在系统的SYSTEM32目录下)。如图:
3.       自己做的程序以及相关的文件
由于我做的比较简单,只有一个运行程序,关联的文件主要是地图文件,我们直接把这些文件拷贝到SETUP文件夹下。
4.       其他相关
其实只需要上面的文件就可以了,如果需要更完整的话,需要以下一些文件。
A.     字体文件(在windows/font文件夹下),建议将字体文件复制到SETUP文件夹下的FONT文件夹(当然这个文件夹自己建拉)。主要有ARIAL.TTF、MAPIS___.TTF、MAPSYM.TTF、TTMIAR__.TTF、TTMICG__.TTF、TTMIMI__.TTF、TTMIOG__.TTF、TTMIOS__.TTF、TTMIRE__.TTF、TTMITC__.TTF、TTMIWE__.TTF
B.      GeoDict.DCT文件(在MAPX5.0/MAPS文件夹下)。该文件不是必须的,主要是在添加注册表项的时候用到,但这个注册表项也不是必须的。建议将该文件复制到你的程序所附带的地图文件目录下。我放在了SETUP/MAPS文件夹。
5.       我的一点点建议
做了N次的打包,给点小小的建议。建议将MAPX50.DLL和mdatasetint.tlb(都在MAPX5.0文件夹下)文件复制到SYSTEM目录。因为到后来添加注册表项的时候可能会遇到点问题,所以我们就直接把MAPX50.DLL和mdatasetint.tlb文件注册到系统的SYSTEM32目录。
最后SETUP文件夹下的所有文件以及目录如图:
第二步:开始打包
打开SETUPFACTORY,新建一个工程。
1.常规设计,就是软件名称版本等等信息设置,最主要的是填写一下产品信息,其他的基本上不需要设置。如图
2.屏幕
这些设置是安装的时候提示的对话框,大家可以自行设置。如图:
最主要的一点,这里是最关键的,主要是完成 MAPX 的注册和注册表的修改。如图
前面两个是添加打开/关闭程序中的执行文件,第一个是注册MAPX50.DLL,必须使用用regsvr32.exe注册,第二个是注册mdatasetint.tlb,必须用regtyplib.exe注册。下面五个是修改注册表,必须修改的要和你自己的一样,可以对照着自己的注册表更改,位置为:HKEY_LOCAL_MACHINE/Software/MapInfo/MapX/5.0。五个注册表修改项主键均为HKEY_LOCAL_MACHINE,子键均为Software/MapInfo/MapX/5.0,值名称和值类型分别为: CommonDLLDir:%AppDir%/mapx5, GeoDictionary:%AppDir%/Maps/GeoDict.DCT, ProgramDir:%AppDir%/mapx5,SearchPaths:%AppDir%/Maps,VersionCode:5.01共5个,前面的为值,后面的为值数据,值类型均为REG_SZ。
当然上面的所有操作均可以放在操作里完成。
3.添加文件
把SETUP文件夹下的所有文件拖到SETUPFACTORY里,如图:
修改部分文件的安装路径,主要是SYSTEM文件夹下的控件和动态连接库等文件,全部安装到%SysDir%目录。修改文件覆盖类型,建议使用永不覆盖存在的文件,字体的覆盖类型也建议修改。
说明:%SysDir%表示系统的SYSTEM32目录,%AppDir%表示安装的选择目录,%FontDir%表示系统字体目录。
4.建立setup.exe文件
选择工程-- à建立,即可在c:/output目录下生成安装文件setup.exe。
好了,现在你的程序就可以发布了。
5.建议:建议打包完成后在没有装有MAPX5的电脑上安装测试。有问题请先看提示,一般情况:a.提示少控件。只需要检查哪些控件没有打包。b.提示MAPX没有注册上。建议检查注册路径是否正确?请用SETUPFACTORY提供的系统路径、安装路径等专用词语,如%SysDir%、%AppDir%,建议不要使用绝对路径注册,绝对路径容易出错。
注: 98 系统跟 2K XP 下的 MapX5.0 文件有所不同,打包时要分开打包
最后加一点,一般MapX多有一个破解的exe,在打包的时候也同时打进去,安装完后,运行这个文件就可以了