【问题标题】:Unable to access SQL table from appl running as service无法从作为服务运行的 appl 访问 SQL 表
【发布时间】:2019-07-22 07:28:13
【问题描述】:

我有一个小型测试应用程序,使用 Delphi 10.3.1 作为独立的HTTPSYS Intraweb 服务。它有一个ADOConnection 和一个ADOTable,在unit1 的FormShow 中,我打开连接和表格,读取前10 行并将它们添加到列表框中。只是为了看看它是否有效并且是可能的。

将应用程序作为独立HTTPSYS 运行时,使用可视化 GUI,它运行良好,但是当我将其编译为服务并将其安装在 sql 服务器或开发机器上时,它会失败并显示访问冲突,试图打开表。我想这是一个身份验证问题。

我尝试打开与Windows Auth 和特定 SQL 登录名的连接,并尝试使用本地系统(默认)和特定 SQL 帐户运行该服务。

我错过了什么?

特定的 SQL 登录,适用于 SSMS。我可以使用它来登录和访问我的表格。

另外,如果我将应用程序创建为DLL 并将其放在我的IIS10 上,它可以正常工作。

【问题讨论】:

  • 访问冲突不是由身份验证问题引起的。它通常是由访问尚未创建或销毁后的组件引起的。无法告诉您可能是什么原因造成的,因为我们无法从这里看到您的代码。

标签: delphi delphi-10.3-rio http.sys intraweb-10


【解决方案1】:

你是对的。它与身份验证无关。

要使 IntraWeb HttpSys Stand Alone 程序作为服务运行,必须将 ServerController.ComInitialization 属性设置为 ciMultiThreaded。

感谢您的评论,让我转向别处。你值得称赞。

问候 索伦

【讨论】:

    猜你喜欢
    • 2010-10-24
    • 1970-01-01
    • 1970-01-01
    • 2018-01-20
    • 1970-01-01
    • 2015-08-05
    • 1970-01-01
    • 2017-10-19
    • 1970-01-01
    相关资源
    最近更新 更多