【发布时间】:2013-12-30 13:44:51
【问题描述】:
我正在安装基于 Qt 的特定 Windows GUI 应用程序,该应用程序需要将 DLL 放置在 PATH 系统环境变量中。对于放置,我可以设法将Installation_path 附加到PATH。但是在卸载我的应用程序时,我想搜索我的安装路径在哪里,然后我必须删除它们并像往常一样放置正常路径而不修改它。正则表达式是我的伴侣还是这样做的任何其他方式?
附:我不能使用boost lib。
【问题讨论】:
-
您应该测试至少 4 种情况:常见的情况是它位于 PATH 中间的某个位置,也包括您的目录是 PATH 的第一个、最后一个或唯一的组件。
-
对,Salters 先生,我必须搜索整个路径以寻找假设:
C:\Application_Name\libs\dll_directory_1;C:\Application_Name\libs\dll_directory_2;C:\Application_Name\libs\dll_directory_3。我需要搜索我的Application_name并返回所有上述路径(3 个或更多),然后删除它们.. -
嗯,你应该把它们放在
\Program files` or its localized variant (seeFOLDERID_ProgramFiles`)。您应该将安装路径存储在注册表中,并在卸载时搜索这些确切路径。但是为什么要使用这么多 DLL 目录呢? -
好吧,我没有注册它们,只是将它们放在系统路径中。我想我必须使用
vector推回所有带有分隔符;的路径,然后使用[]或at()运算符一一读取并查找或搜索它们。好吧,因为这个应用程序使用不同平台的不同模块,所以需要这么多 DLL
标签: c++ regex qt environment-variables