0

以下代码的行为会有所不同,具体取决于我使用的是 32 位还是 64 位版本的 wscript:

Set oSQLServer = CreateObject("SQLDMO.SQLServer")

For Each o in oSQLServer.ListInstalledInstances
    MsgBox o
Next

在 32 位中,它将列出我的 32 位服务器(SQL Server 2000)的实例,在 64 位中,我将获得我的 64 位服务器(SQL Server 2008)的内容。我需要将此代码转换为 C++(32 位应用程序)。但我需要展示 64 位服务器。如何强制创建的对象使用注册表中的 64 位 dll 和 64 位键?

4

2 回答 2

5

32 位应用程序无法加载 64 位 DLL,64 位应用程序无法加载 32 位 DLL。

于 2010-06-25T09:07:03.380 回答
0

我决定将 ODBC 的 SQLBrowseConnect 与连接字符串一起使用

"DRIVER={SQL Server Native Client 10.0};".  

SQLDMO 确实已经死了,而 SQLSMO 仅适用于托管应用程序是相当短视的。

于 2010-06-25T13:12:31.853 回答