不久前,我在公司创建的工具上找到了一份新工作,以便在使用AWR时让人们的生活更轻松。
我已经成功完成了多项修复和改进,我可以通过HotFix安装程序进行分发(只是覆盖已经存在的文件)。
我对该工具的最新更改/添加要求我为该工具创建一个完整的安装程序。此特定工具始终安装2个版本,current / new和previous / old,以便更顺畅地过渡到用户。我以前从未做过安装程序,因此我正在学习。
我只需更新/添加/删除文件和文件夹,就可以使用之前的installshield项目创建安装程序。当计算机上没有安装该工具的版本且安装位置上没有任何版本的文件/文件夹时,这种方法很有用。
我在线查看并发现要制作一个将安装在以前版本上的安装程序,我需要使用installshield进行重大升级,我在阅读之后就做了。现在安装程序成功安装旧版本,它成功地将新文件和文件夹放在它们的位置上,但总是留下一个特定的空文件夹,一个用于1.1.1版本。
在我意识到.exe无法修改需要修改的.ini文件以让AWR知道在哪里查找脚本之前,这似乎不是问题。我查看了.exe代码,在运行一些测试后,单独运行它,我意识到.exe不是问题,它正确地完成了工作。经过多次测试后,我发现只要存在那些空文件夹,就无法修改.ini文件。我不知道为什么因为.ini文件几乎是一个.txt文件而且对1.1.1文件夹存在某种依赖是没有意义的。
所以我的问题是两个中的一个,要么我必须找到一种方法来确保升级删除那些1.1.1文件夹或找到修改.ini文件的方法仍然存在那些文件夹。我已经在线查看,每个解决方案都要求我/用户手动执行某些操作,并且我被要求使安装程序在使用时完全正常工作。他们要求我这样做,以便安装人员处理所有事情,除了运行安装程序之外,用户不应该做任何事情。
由于安装程序正常工作,只要这些文件夹不存在,我想确保安装程序删除它们是最好的方法,但我卡住了,我不知道如何继续。
感谢您提供有关此问题的任何建议和帮助。
答案 0 :(得分:0)
解决方案: 删除了我需要确保从组件列表中更新的所有文件,并将它们重新添加到installshield项目中。 由于.exe是正确的,所以一切都正确更新并删除了文件夹。