C# windows服务安装为64位,但运行为32位

C# windows服务安装为64位,但运行为32位,c#,windows,service,64-bit,C#,Windows,Service,64 Bit,我已经用一些第三方dll创建了一个windows服务。这些dll都是64位的,所以我需要将项目设置为64位,并使用64位安装程序安装服务。这一切都是可行的,不是问题 但是,当我启动服务时,它在一个dll上给出了一个错误。访问冲突错误 我以前在另一个程序中尝试以32位的形式运行代码时遇到了这个错误 我还将所有代码复制到一个简单的windows窗体中。在那里,它就像一个符咒。。。所以在我看来,出于某种原因,Windows试图以32位程序的形式启动该程序?这可能吗 我必须说,我在编程方面有点笨 编辑:

我已经用一些第三方dll创建了一个windows服务。这些dll都是64位的,所以我需要将项目设置为64位,并使用64位安装程序安装服务。这一切都是可行的,不是问题

但是,当我启动服务时,它在一个dll上给出了一个错误。访问冲突错误

我以前在另一个程序中尝试以32位的形式运行代码时遇到了这个错误

我还将所有代码复制到一个简单的windows窗体中。在那里,它就像一个符咒。。。所以在我看来,出于某种原因,Windows试图以32位程序的形式启动该程序?这可能吗

我必须说,我在编程方面有点笨

编辑: 它在任务管理器中显示为64位程序:

下面是我得到的错误:


希望这能有所帮助。

Dll中存在导致此错误的错误。现在由供应商决定。我想,我会让你知道的。

请粘贴完整的异常代码它在任务管理器中是否显示为64位进程(你必须启用“平台”列)?@stuartd是,它显示为64位service@NicoRiff我在问题中添加了错误。@matthijsvanvliet System.AccessViolationException不涉及32/64位问题。了解更多信息: