1

我正在构建一个从 xml 文档馈送的自定义安装程序...

我知道大多数程序员不再自己构建,但这就是我被分配的具体内容,所以请和我一起工作。安装程序需要卸载旧版本的程序才能完成工作。

我可以获得注册表卸载字符串没问题,问题是构建指令文件的用户并不总是会有一个确切的显示名称。

所以...

我正在使用 Levenshteins 差异来获得 70% 以上的可能匹配,这让我容易出错。纠正他们是希望我可以反序列化 GUID 以获取名称并确保我有正确的名称。或类似的东西。

有人可以让我知道在哪里看,或者任何关于如何根据 levenshteins 差异(当单词/短语长度相同时用 Hamming 差异确认)的相似性小于 100% 时如何进行冗余检查的建议

笔记:

版本可能不知道它是删除所有旧版本

发布者在所有方面都是相同的

安装位置应该是网络但不保证用户喜欢在本地复制

4

1 回答 1

0

GUID 不(或至少不应该!)包含来自生成它们的域的任何信息。这些是随机生成的数字,具有足够大的键空间,可以保证它们是唯一的。

除非您有数据库或某种形式的存储库来搜索此 GUID 的相关信息,否则裸 GUID 并不比随机数据库表上的整数 ID 有用。它只是一个标识符。

GUID

编辑

我找到了一个 VBS 脚本,它可以满足您的需求。这将通过其注册表 ID 卸载应用程序。如果您的程序是用另一种语言编写的,您仍然可以使用 System.Diagnostics 命名空间启动 VBS 脚本。

System.Diagnostics.Process.Start("path to script here");
于 2013-09-17T13:53:38.027 回答