VFP6版本的安装向导可以捕捉中文

微软的数据库开发工具,Visual FoxPro 6,广泛应用于中国,但也不可避免地存在着一些缺陷。最近,当我用VFP 6简体中文版开发软件,我发现在安装向导的一个bug。接下来,我将详细地介绍这个问题和作者的解决方案。


在制作应用分发软件时,我使用安装向导将应用软件中的字体文件安装到Windows目录中,根据其正常的正常操作,应用程序在安装过程中发出的应用程序分配出错。错误的窗口标题824的误差导致的安装程序,错误提示是对象16,和您的安装程序文件可能已损坏,请重新运行安装程序,你运行它。这个错误代码不能在帮助文件中找到。根据提示内容,作者检查了所有源文件和生成的文件,发现他们都是正确的。这也正常安装字体文件到应用程序目录和Windows系统目录。失败的原因最终被锁定,即安装向导犯了一个错误时,安装文件到Windows目录。


一种分析经过长时间思考,最后发现两参数文件setup.stf和setup.inf所生成的安装程序的线索。在setup.stf,在相应列的字体文件有一场。内容是应用程序窗口,- 0b20z4avw,而setup.inf,文件的内容被分离的部分,以及部分的名称包含在方括号内的字体文件是在一个单一的部分,和部分应用Windows命名为{ }。我试图使用调试程序修改该段为{应用Windows }的名字,以便对应setup.stf,和三个字节的空间充满了空间,导致安装程序成功安装的字体文件在Windows目录下,并在这一点上设置错误。


回过头来看,这个bug的原因并不完全是由微软Visual FoxPro 6汉化引起的,但它不应该在Visual FoxPro 6的英文版本中,为了方便以后的应用,我做了一段FoxPro程序来自动替换工作的名称:


该程序解决视觉Viusal FoxPro 6简体中文版向导的bug


F1 = locfile('setup。天道酬勤,'inf:天道酬勤)


如果莱恩(F1)> 0


setupinf = fopen(f1,2)


其他的


等待窗口没有setup.inf文件!


返回


endif


如果setupinf<0


等待窗口打开setup.inf文件错误!


返回


endif


S1{应用程序- Windows }


{应用程序Windows }}


S2字符串在字符串的结尾有3个空格,使其等于S1的长度。


标志1 = F.


做while.not.feof(setupinf)


S3 = fgets(setupinf)


如果S3 = S1


Fseek(setupinf,0-len(S1)- 2)


作用是:将内容(setupinf,S2)


标志1 = T。


出口


endif


enddo


Fclose(setupinf)


如果标记1


等待Windows替换成功!


其他的


等待Windows找不到!


endif


返回


以上是笔者的解决方案,希望能对大家的发展有所帮助。