C# 引用Siemens.Sinumerik.Operate.Services.dll开发加工软件,抛出异常

C# 引用Siemens.Sinumerik.Operate.Services.dll开发加工软件

执行到如下代码片段:会报错。

            try

            {

                m_dataSvc = new DataSvc();

                m_dicPiServiceHandle = new Dictionary<string, PiSvc>();

            }

            catch (Exception ex)

            { 

                m_log4.Error(ex);

            }

实例化DataSvc对象时,抛出异常,如下:


===================================================================================================================================

异常时间:2021-04-03 18:46:25,316 | 线程:[1] | 信息等级:ERROR | 出错位置:DeviceSiemens.SiemensCNC..ctor()

System.IO.FileNotFoundException: 未能加载文件或程序集“Siemens.Sinumerik.Operate.Services.Wrapper, Version=4.5.4.0, Culture=neutral, PublicKeyToken=bdd90fa02fd1c4ee”或它的某一个依赖项。系统找不到指定的文件。

文件名:“Siemens.Sinumerik.Operate.Services.Wrapper, Version=4.5.4.0, Culture=neutral, PublicKeyToken=bdd90fa02fd1c4ee”

   在 Siemens.Sinumerik.Operate.Services.DataSvc.InitClass(String server)

   在 Siemens.Sinumerik.Operate.Services.DataSvc..ctor()

   在 DeviceSiemens.SiemensCNC..ctor() 位置 e:\CSharp\CSharpCode\HMI_test\DeviceSiemens\SiemensCNC.cs:行号 70

=== 预绑定状态信息 ===

日志: DisplayName = Siemens.Sinumerik.Operate.Services.Wrapper, Version=4.5.4.0, Culture=neutral, PublicKeyToken=bdd90fa02fd1c4ee

 (Fully-specified)

日志: Appbase = file:///E:/CSharp/CSharpCode/HMI_test/JwClient/JwClient/bin/Debug/

日志: 初始 PrivatePath = NULL

调用程序集: Siemens.Sinumerik.Operate.Services, Version=4.5.4.0, Culture=neutral, PublicKeyToken=bdd90fa02fd1c4ee。

===

日志: 此绑定从 LoadFrom 加载上下文开始。

警告: 将不在 LoadFrom 上下文中探测本机映像。仅在默认加载上下文中探测本机映像,例如,使用 Assembly.Load()。

日志: 正在使用应用程序配置文件: E:\CSharp\CSharpCode\HMI_test\JwClient\JwClient\bin\Debug\JwClient.exe.Config

日志: 使用主机配置文件: 

日志: 使用 C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config 的计算机配置文件。

日志: 策略后引用: Siemens.Sinumerik.Operate.Services.Wrapper, Version=4.5.4.0, Culture=neutral, PublicKeyToken=bdd90fa02fd1c4ee

日志: 尝试下载新的 URL file:///E:/CSharp/CSharpCode/HMI_test/JwClient/JwClient/bin/Debug/Siemens.Sinumerik.Operate.Services.Wrapper.DLL。

警告: 比较程序集名称时发生不匹配: 修订号

日志: 尝试下载新的 URL file:///E:/CSharp/CSharpCode/HMI_test/JwClient/JwClient/bin/Debug/Siemens.Sinumerik.Operate.Services.Wrapper/Siemens.Sinumerik.Operate.Services.Wrapper.DLL。

日志: 尝试下载新的 URL file:///E:/CSharp/CSharpCode/HMI_test/JwClient/JwClient/bin/Debug/Siemens.Sinumerik.Operate.Services.Wrapper.EXE。

日志: 尝试下载新的 URL file:///E:/CSharp/CSharpCode/HMI_test/JwClient/JwClient/bin/Debug/Siemens.Sinumerik.Operate.Services.Wrapper/Siemens.Sinumerik.Operate.Services.Wrapper.EXE。

日志: 尝试下载新的 URL file:///E:/CSharp/CSharpCode/HMI_test/ConfiguratorSiemensOperate/bin/Debug/Siemens.Sinumerik.Operate.Services.Wrapper.DLL。

警告: 比较程序集名称时发生不匹配: 修订号

日志: 尝试下载新的 URL file:///E:/CSharp/CSharpCode/HMI_test/ConfiguratorSiemensOperate/bin/Debug/Siemens.Sinumerik.Operate.Services.Wrapper/Siemens.Sinumerik.Operate.Services.Wrapper.DLL。

日志: 尝试下载新的 URL file:///E:/CSharp/CSharpCode/HMI_test/ConfiguratorSiemensOperate/bin/Debug/Siemens.Sinumerik.Operate.Services.Wrapper.EXE。

日志: 尝试下载新的 URL file:///E:/CSharp/CSharpCode/HMI_test/ConfiguratorSiemensOperate/bin/Debug/Siemens.Sinumerik.Operate.Services.Wrapper/Siemens.Sinumerik.Operate.Services.Wrapper.EXE。

大概是说找不到Siemens.Sinumerik.Operate.Services.Wrapper.dll

可是如下两个dll放在同一个目录了,不少

(Siemens.Sinumerik.Operate.Services.Wrapper.dll)

(Siemens.Sinumerik.Operate.Services.dll)

这个坑卡了好几天了,请各位专家不吝赐教,谢谢!

版主推荐答案

我们倒是这方面应用多一些,OPCUA和3GL的开发都涉及,C#编程也有。 看引用的库应该是3GL的,引用目录和调试确实需要注意,需要连接在X120口网络上,并且打开Operate;如果没有真实环境,可以用sinutrain代替。VS需要经过特定路径打开才能正确调试。

查看完整帖子:
http://www.ad.siemens.com.cn/club/bbs/post.aspx?a_id=1689641&bid=20

提问者对于答案的评价:

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc350868.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2021年7月5日 上午12:35
下一篇 2021年7月5日 上午12:35

相关推荐

  • 自动优化设置的几个问题

    840d系统中的自动优化设置总的前两步即mech. measurement  part 1和mech. measurement&n…

    SINUMERIK 2019年6月11日
  • 怎么实现第一软限位和第二软限位的切换呢?

    在840d系统中,如果在换刀或者换头的过程中,需要用到取消第一软限位,激活第二软限位,怎么来实现这个功能呢? 问题补充:激活第二软限位,那肯定就要取消第一软限位了,怎么取消第一软限…

    SINUMERIK 2018年12月7日
  • 西门子交流伺服电机如何选型?

    怎么选择交流伺服电机的转速、功率,启动转矩和额定的大小如何计算? 最佳答案 1、一般伺服电机选择考虑的问题——(1)电机的最高转速  电机选择首先依据机床快速行程速度。快…

    SINUMERIK 2018年12月2日
  • 810D Powerline 系统不能存储报警记录

    数控系统810D Powerline  不能存储报警记录,怎么解决? 问题补充:菜单上确实没有“报警记录”键,该机床确实没有硬盘,不过用Flash&n…

    SINUMERIK 2017年11月19日
  • 为什么有的伺服驱动器要把旋转编码器信号输出给PLC

    旋转编码器信号输入到伺服驱动器中形成闭环控制就行了,为什么伺服驱动器还要把该信号输出给PLC?注意是一部分控制系统是这样的,不是所有。 最佳答案 把编码器信号输出给PLC,仅是作为…

    SINUMERIK 2017年11月27日
  • 840D控制主轴转速

    是这样,我这里有一台龙门五面铣设备。主轴如果转1000转的时候,它的转速是慢慢转起来的。没有一下下达到1000转。还有转速在1000转的时候。按复位,转速慢慢带惯性停了下来,没有像…

    SINUMERIK 2017年11月4日
  • 讲解OB100里面变量的资料

    有没有详细讲解OB100里面这些变量的资料啊,如MCPNum,MCP1In这些到底是什么意思,我找不到啊。高手帮帮忙。 最佳答案 1、这些变量是与840D系统有关。例如:MCPNu…

    SINUMERIK 2017年11月1日
  • S7-200控制伺服电机回原点的方式可行么?

    我现在控制一台伺服电机在两点之间来回运动。可是,当发生意外情况下,电机可能停止在两点之间某个位置,此时,手动执行回原点程序,请问如何处理较好?我目前的想法是先让电机快速执行一个较大…

    SINUMERIK 2017年11月6日
  • 外圆磨定义轴

    我调试的是外圆磨 828D的数控系统,主轴是伺服的,磨头是55千瓦的变频电机,转速是从828D的模拟给定,X轴是电机直联的,Z轴是两个电机主从耦合的.请大侠指教每个轴是怎…

    SINUMERIK 2017年7月30日
  • 请输入840D中的软件键HMI_RPC是干嘛用的

    请输840D中的软件键HMI_RPC是干嘛用的? 问题补充:你用过吗,怎么样呢? 最佳答案 REMOTE PC的意思 ,就是说远程PC,是远程监控或调试用的。 …

    SINUMERIK 2020年10月31日

发表回复

登录后才能评论