我正在为工作中的程序创建新的安装程序,但在注册 psqlodbc 驱动程序时遇到问题。不幸的是,我对安装程序或 odbc 驱动程序知之甚少。
我有这个特定程序的旧安装程序的副本,它是由其他人创建的。当我使用 Orca 查看 msi 中的注册表时,我可以看到几个与 psqlodbc 相关的条目:
**Registry** **Key** **Name** **Value**
psqlodbc.reg.1.<GUID> SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers PostgreSQL Installed
psqlodbc.reg.2.<GUID> SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL APILevel 1
psqlodbc.reg.3.<GUID> SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL ConnectFunctions YYN
psqlodbc.reg.4.<GUID> SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL Driver [#psqlodbc.dll.<GUID>]
psqlodbc.reg.5.<GUID> SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL DriverODBCVer 03.00
psqlodbc.reg.6.<GUID> SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL FileUsage 0
psqlodbc.reg.7.<GUID> SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL Setup [#psqlodbc.dll.<GUID>]
psqlodbc.reg.8.<GUID> SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL SQLLevel 1
psqlodbc.reg.9.<GUID> SOFTWARE\ODBC\ODBCINST.INI\PostgreSQL UsageCount #1
但是,当我尝试使用 heat 获取 psqlodbc.dll 文件以便将其合并到我的安装程序中时,.wxs 文件中显示的所有内容都是一个文件元素(没有注册表数据)。我尝试使用 regsvr32 手动注册,但这给了我一个关于找不到“入口点”的错误。
基本上,旧安装程序正在为 psqlodbc 驱动程序创建注册表项,我可以使用 regedit 看到它,但我不知道如何将此行为合并到我的新安装程序中。
这是我工作的最后一周,我真的很想在我离开之前让这个安装程序工作。
请帮忙!!