问题标签 [mdac]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
696 浏览

sql - 尝试使用 x64 位目标平台在 VS2008 中编译时 MDAC 出现问题

我正在尝试编译一个 32 位应用程序。我知道它存在问题,但这就是它在 64 位版本上编译的原因。

我挂在这个问题上。应用程序使用了大量的 sql 东西。

在 sqltypes.h 文件中:(由 MDAC 提供)

出于某种原因,当它在 32 位平台上编译时效果很好但是当我尝试在 64 位平台上构建它时,它就发疯了。

错误 61 错误 C2146:语法错误:缺少 ';' 在标识符“SQLLEN”之前 ..\external\microsoft sdk\include\sqltypes.h 50

它不识别 INT64、UINT64。

我需要启用什么东西才能在 64 构建过程下工作吗?缺少一些#include 或#define?

任何帮助都会很棒

谢谢

0 投票
1 回答
315 浏览

compare - 比较两台不同机器上同一应用程序的 DLL 集

有没有一种好方法可以比较运行同一应用程序的两台机器之间加载的 DLL。(并在 N 台其他机器之间复制该过程,一次两台?)

背景:我正在尝试追查配置/设置问题。这是一个古老的 DLL 地狱类型问题,应用程序将在一台机器上运行,但不能在另一台机器上运行。

我已经消除了我们的安装程序问题;它是稳定的,但目标系统之间存在差异。不同的 Windows 风格、MDAC 版本等。

我尝试过:使用 Proc Explorer 将 EXE 快照导出到分隔文件并使用 Excel 进行比较。但这非常耗时且容易出错。(我不排除 Excel 的可能性,我只是不知道足够的技巧来使用它来达到我的目的。)

0 投票
1 回答
807 浏览

c# - MDAC OLEDB 命令提示符 32 位问题

几年前,我编写了一个 C#.NET 程序,该程序使用 Microsoft ACE 和 JET OLEDB 将 Excel 电子表格转换为 CSV 文件。最近我们升级到了 Windows Server 2008 x64 服务器。由于 JET 已被弃用,该方法不再有效。最初,Excel 2003 中的 .xls 文件使用 JET 处理,而 Excel 2007 中的 .xlsx 文件使用 ACE 处理。我更改了连接字符串以对两者都使用 ACE。

我们现在可以通过命令提示符成功运行程序。但是,当我们使用我们的自动化软件(显然运行类似于 Start->Run 方法的程序)时,我们会收到一条错误消息,指出未安装 Microsoft 数据访问组件。经过研究,它们似乎只能在 32 位系统上运行,并且不支持 Windows Server 2000 以上的任何系统。

有任何想法吗?我们安装了最新的 beta x64 ACE OLEDB 驱动程序。该程序手动运行良好。我也试过用 x86 的目标平台编译程序。我们还使用自动化软件使用的 windows 帐户成功地手动运行了程序。

0 投票
1 回答
459 浏览

sql-server - Sql Server 2011(“Denali”)是否支持 MDAC?

有人告诉我,下一版本的 SQL Server(2011 - “Denali”)不会像其他 RDBMS 那样使用 MDAC,而是使用“供应商 dll”。这是真的还是 MDAC 仍然可以工作?

如果这是真的,我的客户端应用程序的零安装(因为已经安装了 MDAC,我不需要做任何事情,只需在客户端机器上复制一个 exe)将成为 Sql Server dll + My exe 部署。

您能对此提出一些建议吗?

0 投票
1 回答
4375 浏览

vb6 - VB6 App 重新编译后无法在 Server 2008 上运行

我正在尝试移动 Web 服务器。我们的应用程序(善良)是在 1998 年(我认为)用 VB6 编写的。我已经让它在我们的新服务器(Windows Server 2008 R2 64 位)上运行。但是,当我在我的机器(Windows 7 64 位)上获取源代码并将 exe 传输到服务器时,当应用程序尝试连接到数据库时出现以下错误:“错误 430(类不支持自动化或不支持预期的接口)”

该项目引用了 Microsoft Activex 数据对象 2.8 库。错误的行是

因此,它实际上并没有尝试连接到数据库,而是在尝试创建对象时纯粹炸毁了。

有人对这种错误有任何经验吗?或者对我有什么建议?谷歌有几种可能性,但都没有成功。它们中的大多数都与通用控件和使用“项目兼容性”有关——但我的应用程序以“无人值守执行”运行,所以我不能选择它(它在项目属性中完全禁用。)

0 投票
2 回答
22157 浏览

c# - 行/列不存在数据

在使用 C# 在 ASP.NET 中执行以下代码时,我收到一个异常,例如“行/列不存在数据”。

我正在使用 Visual Studio 2008 和 MySQL。我正在使用 MySql ODBC 连接器 5.1 和 MDAC2.8。

请指导我如何解决这个问题。

0 投票
2 回答
8696 浏览

c# - 未找到 ADODB COM 对象

我在我的 c# 应用程序中使用 ADODB COM 对象,该应用程序是在 Windows 2008 R2 Standard 64bit 上开发的。现在我已经使用 Windows 2008 Standard 64bit(不是 R2)在 prod 服务器上移动了应用程序,现在我得到了下面的错误。我的 prod 机器上似乎没有安装 MDAC 2.8?我找不到任何参考如何在 Windows 2008 机器上安装 MDAC 2.8,也许有人可以指出我正确的方向?

错误:无法将“ADODB.StreamClass”类型的 COM 对象转换为接口类型“ADODB._Stream”。此操作失败,因为 IID 为“{00001565-0000-0010-8000-00AA006D2EA4}”的接口的 COM 组件上的 QueryInterface 调用因以下错误而失败:不支持此类接口(HRESULT 异常:0x80004002 (E_NOINTERFACE)) .,

0 投票
2 回答
3315 浏览

c# - 使用 Windows 7 的 MDAC 出现问题

我正在使用 c# 开发一个应用程序,该应用程序需要连接到数据库以获取我拥有的 excel 文件的信息。

问题是,在我清理注册表之前,我总是收到以下错误:

System.InvalidOperationException:.Net Framework 数据提供程序需要 Microsoft 数据访问组件 (MDAC)。请安装 Microsoft 数据访问组件 (MDAC) 版本 2.6 或更高版本。----> System.Runtime.InteropServices.COMException:检索具有 CLSID {2206CDB2-19C1-11D1-89E0-00C04FD7A829} 的组件的 COM 类工厂失败,原因是以下错误:80040154 未注册类(来自 HRESULT 的异常:0x80040154 (REGDB_E_CLASSNOTREG))。

我不知道注册表清理是否是,但它是唯一可以做任何事情的事情。我使用的是Windows 7,我读到它已经包含在核心组件中,我无法重新安装它。

我能做些什么?似乎我找到的任何解决方案都不起作用。

谢谢!

0 投票
1 回答
1793 浏览

windows-7 - 带有 SP1 和 VB6 的 ADO 窗口

我一直在阅读有关 VB6 应用程序的 Windows 7 service pack1 中 ADO/MDAC 更改的 GUID。我需要重新复制我的组件并用新组件替换已弃用的组件。我的问题是,如果我的 VB6 应用程序只安装在带有 service pack 1 的 windows 7 或带有最新 service pack 的 windows 2008 上,我的 VB6 应用程序仍然可以工作,还是我还需要安装其他东西?

0 投票
3 回答
8362 浏览

c# - .Net 框架需要在服务器 2008 中安装 MDAC

我的公司最近使用 tivoli 工作负载调度程序 (TWS) 将作业从 z/OS 远程触发到窗口服务器。我们测试了tivoli可以成功触发mssql服务。

现在的问题是我们有一个 .NET CL 程序,我们每天使用它来将 AS400 中的一些数据提取到 mssql 服务器,之前使用 windows 调度程序并在特定时间范围内每天触发时它可以完美运行。现在我们尝试集中调度程序,以便 TWS 远程触发准备好的批处理文件(它将触发 CL 程序)。

但 CL 程序的执行在尝试连接到 AS400 DB 时显示以下错误。

.Net Framework 数据提供程序需要 Microsoft 数据访问组件 (MDAC)。请安装 Microsoft 数据访问组件 (MDAC) 版本 2.6 或更高版本。

编辑:在正常情况下,我们假设程序可以成功触发,它应该就像使用 windows 调度程序一样,设置一个时间表并执行它。唯一的区别是调度器现在不是windows调度器,而是切换到TWS并远程触发CL程序。但是执行 CL 程序期间执行显示上述错误。我们不知道为什么会出现这个错误。我们尝试重新运行 CL 程序并在 Windows 调度程序中安排它,工作正常。但在 TWS 上远程安排,错误。

对于我们迄今为止所做的测试和观察:

  1. 我们的服务器是 Windows server 2008 SP2 x64,我对旧版本 windows 中使用的 MDAC 进行了一些研究,而 server 2008 应该提供更新版本的 MDAC (WDAC 6.0),它不能重新安装,所以我认为 MDAC/WDAC 必须是正确安装。

  2. CL 程序是用 .NET 2.0/ 3.0 / 3.5 编译的,并测试它们都产生相同的错误。

  3. 他们的错误日志能够生成到 sql server DB,所以我假设在 CL 程序中使用的连接驱动程序没有问题。但它可能是由 IBMDA400 驱动程序引起的。

  4. TWS 使用我们服务器中的管理员帐户来触发批处理文件,我们的服务器中安装了一个 TWS 客户端(侦听器)用于触发我们服务器中的程序,但我们不知道它们如何连接到我们的服务器(SSH?telnet?)并且他们似乎实际上并没有登录到我们的服务器进行远程触发(在静默模式下触发我们的工作)。

我们急于寻求任何解决方案,如果有人能提供任何线索或想法,那将是非常有帮助的,并为将来遇到同样问题的人提供了很大的帮助。

非常感谢!。