Rover's Official Blog

Map/GPS/GIS/WebMap

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  47 随笔 :: 0 文章 :: 437 评论 :: 41 引用

先谈MAPX打包:
以前MAPX打包的时候一直没有问题,但这次昨天晚上打到现在都没有成功,安装了打包后的软件基本上是提示1165错误。
想来想去,试了很多方法都没有成功。刚开始的时候以为是GeoDict.DCT没有打包进去,于是把GeoDict.DCT放进去,但1165错误依然。师弟说,装了MAPX以后就可以运行软件了。我一直认为不是MAPX的问题。最后没有办法了,卸载MAPX再装MAPX试试,发现软件可以用了,奇怪。于是对最怀疑的GeoDict.DCT进行测试,发现只要GeoDict.DCT存在并且存放目录正确是没有问题的。我又去检查注册表,发现注册表的MAPX下面除了我写的5.0的项以外多了DatasetEngines项,难道和这个有关,于是我备份这个项后把它删除,发现程序又提示1165错误了。啊,问题原来就出在这里。我重新导入DatasetEngines项,程序就可以运行了。好怪的错误,一直没有考虑到过。不过觉得也有道理,这次做的程序是MAPX+数据库连接的,可能需要MAPX的数据库连接支持,所以多了DatasetEngines项也是情理之中。

DatasetEngines项的注册信息

 顺便在这里谈个注册表注册的小技巧。在cmd里输入:『regedit REG文件的路径』即可以注册,但如果加上/s参数就可以无提示注册,如『regedit /s c:\abc.reg』

 再谈MAPX的安装:
我一直很郁闷放出了我的那个所谓的电子地图查询的代码。
为什么呢?因为经常有人加我Q问我有没有MAPX,发我一个,或者象上面的留言,说,我的运行不了,请问为什么啊?或者就是我不能下载能不能发我一份到我的邮箱?
对于这样的问题,我想耐心的解释给他们,但实在是郁闷的很。没有MAPX,请不要问我要,不是我不给,因为这个300M的东西我Q上传说明我有病。连MAPX都找不到那开发什么?不要老向别人索取,重要的是你可以问百度或者GOOGLE,他们会不厌其烦的告诉你。说代码不能下载,除了博客园可能有时有问题以外,我想其他时间是不可能下载不了的,如果你的网络速度很慢,那么即使发了你邮箱你下载也是一样很慢,而且我实在不愿意去登陆我的WEB邮箱再等待发送。为了你心爱的东西就应该付出代价,连下载东西的那一点点时间都不想等待我不知道你还能做什么,学习就更不用讲了。关于我的程序运行不了,那么我想你没有调试好环境,我上面说的很清楚,需要VB6和MAPX5.02,其它的我想问题不大,是基本的系统提供的组件,如果连这些环境都没有那怎么运行的了?
还是废话少说,总结如下:不要一味地向别人索取(这里的索取是指索取资料以及问题的答案),重要的是发现问题如何尽自己的能力去解决问题,就如同上面我写的再谈MAPX打包。如果要问请先问百度或者GOOGLE,想了很久但实在想不起来,那么你可以提出来供大家一起探讨,可以通过邮件或者留言的方式,但不要以即使通讯工具聊天式的提问。请学会换位思考,不是别人不愿意回答你的问题,而是有些问题至少可以从百度或者GOOGLE找到,不是别人不愿意发代码到你的邮箱,而是在可以下载的情况下为什么不自己下载而还要求别人?不是别人过于高傲,而是别人实在没有太多的时间和你聊天。
继续说MAPX安装。
先说MAPX的下载地址,可以到资源大联盟的FTP下载,他们的FTP肯定有这么一个MAPX5.02中文版,是个RAR,大概150M左右,下载解压缩后是一个300M的ISO(这个至少我最近下过一次,时间上我不敢继续保证)。至于这里说的资源大联盟的网址以及FTP地址甚至MAX是放在了什么目录,对不起,这些请不要再问我了。
安装注意事项:对于MAPX5.02中文版,必须从光盘安装(MAPX5.01应该不需要从光盘安装),并且如果你刻录光盘的时候一定要把MAPX刻在根目录不能放于二级目录,不然安装是不成功的(可能的情况是看上去安装成功了,但是没有开发功能的)。当然你也可以做成ISO文件或者其他的镜像文件,放入虚拟光驱从虚拟光驱安装(我一直是这么做的)。注意事项大概就这么简单。至于ISO是什么、怎么做ISO怎么用虚拟光驱等,请不要问我,谢谢。
如果是上面问题以外的问题或者是你的想法,欢迎在下面留言提出并同大家探讨。本文中用词过于激烈请浏览本页的朋友多多包涵。谢谢。

posted on 2006-05-31 23:28 Rover.Tang 阅读(6447) 评论(7)  编辑 收藏 网摘 所属分类: GIS

评论

#1楼  2006-07-27 10:23 ec [未注册用户]
请问这样打包的文件,在解压安装后,释放的数据,还是矢量数据吧,那怎么对那些矢量数据进行保护呢??
  回复  引用    

#2楼 [楼主] 2006-07-27 19:00 浪人|努力      
@ec
当然看你的罗。网上有个人做了个DLL在卖。不过觉得原理就是在原始数据中添加一些自定义保护的信息,然后通过一个黑盒子读取就可以了。黑盒子可以自定义。
  回复  引用  查看    

#3楼  2007-02-28 13:01 什么呀 [未注册用户]
你这哪是打包mapx,分明是安装上去的,搞什么呀
  回复  引用    

#4楼  2007-07-28 20:56 路过 [未注册用户]
本人最近开发一套GIS系统,可谓费尽周折,想写点感想,博主的视频可谓给我了很大的帮助,但也帮我走了不少弯路,在此想谈谈mapx5.0的打包问题。
我的系统使用的是delphi+mapx5.26+ado,另外还使用了什么比较流行的fastreport3.0的报表设计器,由于第一次用delphi做系统,也是第一次使用mapx5。所以呢感触颇多,希望更多的软件同行少走弯路,快速上手,特回帖:
mapx5打包按照视频上讲的内容是有些问题的,特别是mapx50.dll和mdatasetint.tlb不能成功注册,仔细分析视频,发现其有几个不妥的地方,第一是在安装之前并且是在应用程序目录下注册mapx50.dll感觉有问题,因为mapx50.dll根本都没有安装进应用程序目录,再者就是regsvr32.exe在注册dll的时候,要求前面的路径不能太长(也就是说不支持长文件名格式),所以根本是无法注册的。本人采用以下方法成功解决注册的问题:
1. 选择“操作”,再选“安装之后”选项卡,在此选项卡中点击左下角的第一个图标弹出菜单,在菜单中选择“打开/关闭程序”下面的子菜单“执行文件”,屏幕弹出设置窗口
在“要执行的文件”下面的文本框中输入:
%appdir%\mapx5\regsvr32.exe mapx50.dll /s
在“工作的目录”下面的文本框中输入:
%appdir%\mapx5\
2. 采取同样的办法注册mdatasetint.tlb,具体如下:
在“要执行的文件”下面的文本框中输入:
%appdir%\mapx5\regtyplib.exe mdatasetint.tlb
在“工作的目录”下面的文本框中输入:
%appdir%\mapx5\
注意:成败的关键在于设置“工作的目录”,如果不设的话将会失败。

3.我们如果做的地图比较简单,完全不需要打包什么字体,一样可以运行。
4.在注册表中的五个键值我也总结了下一并贴出,这个一般放在“操作”/“安装之前”完成(类似于第一步操作,不过要选择“注册表”/“修改注册表”)
在添加五个键值的时候主键都选择:HKEY_LOCAL_MACHINE 子键都选择:Software\Mapinfo\Mapx\5.0 五个键名称和对应的键值分为:
CommonDLLDir %AappDir%\mapx5
GeoDictionary %AppDir%\Maps\GeoDict.DCT
ProgramDir %AppDir%\mapx5
SearchPaths %AppDir%\maps
VersionCode 5.02
上面的五行中左边的填到键名称中,后面的对应填到键值中。其它选择什么 注册表操作 和 值类型 使用默认,不用管它。
5. 找到你安装的mapx50文件夹全部复制出来,放到一个单独的文件夹,注意把maps文件夹从mapx5里面提出来放到跟mapx5处于同一级别,而不是mapx5的子文件夹。在maps中除了保留GeoDict.DCT这个文件外,其它全部删除,把你的地图.gst和相关文件一并复制进来。
本来是不想写的,可是感觉我们做计算机这行的真累,这些东西在书上也没有现成的,好不容易在网上找点支离破碎的东西,有的有些小错误不说,有的完全则是挂羊头买狗肉,什么都没有,搞了半天,机子还中了毒,眼睛都会看瞎,总之感觉累。
还有很多想写,只是感觉写的太累了,如果想交流的话加我QQ吧,我的QQ是36109439


  回复  引用    

#5楼  2007-10-20 14:10 磊.NET      
a
  回复  引用  查看    

我的mapx安装是出现的问题,更新系统注册记录失败,请试用regedit
运行→Regedit
找到:HKEY_CLASSES_ROOT\SldAssem.Document
HKEY_CLASSES_ROOT\SldDraw.Document
HKEY_CLASSES_ROOT\SldPart.Document
三个项,分别右击项值,选中“权限”,在“组或用户名称”中选中当前用户,在“Administrators的权限”选中“完全控制→允许”,单击“确定”

这是在网上找的方法,但是我的 没有这三个文件SldAssem.Document ,SldDraw.Document SldPart.Document
请问有其他方法没有,可以告诉嘛?谢谢
我的邮箱:kuqideweicao@yahoo.com.cn
  回复  引用    





标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2006-05-31 23:39 编辑过
Google站内搜索

相关文章:

相关链接: