羅漢果茶 2022-07-27 20:08 采纳率: 66.7%
浏览 563
已结题

关于C#调用DLL崩溃闪退报错的问题,如何解决?

最近正在学习做一个创建虚拟串口的窗体程序Demo,调用了DLL后,崩溃闪退。

以下是是方法类的代码

[DllImport("vspdctl.dll", CallingConvention = CallingConvention.StdCall)]
        public static extern bool CreatePair(string comName1, string comName2);

public bool CreatePort(string com1,string com2)//创建方法
        {
            string s = com1;
            string s2 = com2;
            bool IsCrateture=CreatePair(com1, com2);//创建
            return IsCrateture;
        }

窗口按钮调用的代码


```c#
 private void button1_Click(object sender, EventArgs e)
        {
            try
            {
                bool IsCrateSeccuss = GetVSPD.CreatePort(CreatePortName.Text, CreatePortName2.Text);//是否创建成功
                if (IsCrateSeccuss)
                {
                    MessageBox.Show("创建成功");
                }
                else
                {
                    MessageBox.Show("失败");
                }
            }
            catch(Exception ex)
            {
                MessageBox.Show(ex.ToString());
            }
            
            
            
        }

``

报了这个错误,错误如下:
System.DllNotFoundException:无法加载DLL"vspdctl.dll":动态链接库(DLL)初始化例程失败。(异常来自 HRESULT:0x8007045A)
在CreatePortDemo.VSPDclass.CreatePair(StringcomName1StringcomName2)在CreatePortDemo.VSPDclass.CreatePort(Stringcom1Stringcom2)位置F:1A\虚拟Demo\CreatePortDemoVSPDClas5.cs:行号32
在CreatePortDemo.CreatePortForm.button1 click(Object senderEventArgs e)位置F:1A\虚拟DemoCreatePortDemoCreatePortForm.cs:行号30

请求老哥们帮助!该怎么解决这个问题!

  • 写回答

1条回答 默认 最新

  • 羅漢果茶 2022-07-27 20:22
    关注

    已经解决了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 8月5日
  • 已采纳回答 7月28日
  • 修改了问题 7月27日
  • 创建了问题 7月27日

悬赏问题

  • ¥15 如何构建全国统一的物流管理平台?
  • ¥100 ijkplayer使用AndroidStudio/CMake编译,如何支持 rtsp 直播流?
  • ¥20 和学习数据的传参方式,选择正确的传参方式有关
  • ¥15 这是网络安全里面的poem code
  • ¥15 用js遍历数据并对非空元素添加css样式
  • ¥15 使用autodl云训练,希望有直接运行的代码(关键词-数据集)
  • ¥50 python写segy数据出错
  • ¥20 关于线性结构的问题:希望能从头到尾完整地帮我改一下,困扰我很久了
  • ¥30 3D多模态医疗数据集-视觉问答
  • ¥20 设计一个二极管稳压值检测电路