c#子线程中打开系统文件操作对话框

2023-05-16

出错环境:

多线程接收文件的时候,需要打开一个SaveFileDialog对象,并调用ShowDialog()方法

出错代码:

 

[html]   view plain copy

  1. void threadProc()  
  2. {  
  3.     ...  
  4.     SaveFileDialog saveFileDlg = new SaveFileDialog();  
  5.     if (saveFileDlg.ShowDialog() != DialogResult.OK)  
  6.     {  
  7.          /返回之后,recvThreadProc  
  8.          return;  
  9.     }  
  10.     ...  
  11. }  

出现异常:

 

当执行到saveFileDlg.ShowDialog()方法的时候,就会出现如下错误提示:“在可以调用 OLE 之前,必须将当前线程设置为单线程单元(STA)模式,请确保您的Main函数带有STAThreadAttribute标记。”

出错原因:

确认了下,Main()函数之前确实有STAThreadAttribute标记,因此不是该问题&#

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

c#子线程中打开系统文件操作对话框 的相关文章

随机推荐

  • c#winform控件过多卡顿问题解决方案

    近期在项目中遇到了登录以及切换界面时 xff0c 界面不停闪烁的问题 xff0c 经过查阅发现以下方法可以成功解决该问题 将下面代码添加到窗体代码中即可 xff1a protected override CreateParams Creat
  • 子类继承父类后调用virtual函数问题(base.函数名)

    void Main SonB s 61 new SonB s Show 先调用子类的函数 xff0c 再调用基类的函数 xff08 在子类方法中base Show xff09 xff0c 一共messageBox show 了两次 publ
  • MVVM简介与运用

    前言 在介绍MVVM框架之前 xff0c 先给大家简单介绍一下MVC MVP框架 xff08 由于本博文主要讲解MVVM xff0c 所以MVC和MVP将简化介绍 xff0c 如果需要我将在以后的博文中补充进来 xff09 MVC框架 xf
  • 基于Tensorflow 三层神经网络拟合二次函数(附代码与解析)

    文章目录 前言一 隐藏层函数二 生成二次函数与损失函数 1 二次函数与画图2 损失函数三 训练数据总结 前言 刚入手深度学习 xff0c 结合这几天看的视频与内容 xff0c 将其整合成文章 提示 xff1a 以下是本篇文章正文内容 xff
  • C#中如何获取鼠标及控件的位置坐标(相对于屏幕)

    0 xff1a Control PointToScreen xff1a 将指定工作区点的位置计算成屏幕坐标 1 xff1a Control MousePosition 鼠标相对于屏左上角的坐标 xff1b 2 xff1a this Poin
  • windows系统-汇编语言的语法是“操作码+操作数”

    在汇编语言中 xff0c 1行表示对CPU的一个指令 汇编语言指令的语法结构是操作码 43 操作数 xfffc xff08 也存在只有操作码没有操作数的指令 xff09 操作码表示的是指令动作 xff0c 操作数表示的是指令对象 操作码和操
  • windows系统-程序编译过程

    系统调用和高级编程语言的移植性 操作系统的硬件控制功能 xff0c 通常是通过一些小的函数集合体的形式来提供的 这些函数及调用函数的行为统称为系统调用 xff08 system call xff09 xff0c 也就是应用对操作系统 xff
  • windows系统-汇编语言与机器码的关系

    接下来就让我们进入到本章的前半部分 在前面章节中已经多次提到 xff0c 计算机CPU能直接解释运行的只有本地代码 xff08 机器语言 xff09 程序 用C语言等编写的源代码 xff0c 需要通过各自的编译器编译后 xff0c 转换成本
  • windows系统-函数的条件分支实现用汇编语言解释

    下面让我们来看一下条件分支的实现方法 条件分支的实现方法同循环处理的实现方法类似 xff0c 使用的也是cmp指令和跳转指令 xff0c 这一点估计大家也预料到了 没错 xff0c 条件分支就是利用这些指令来实现的 不过 xff0c 为了以
  • windows系统-程序加载时生成栈和堆的过程

    EXE文件的内容分为再配置信息 变量组和函数组 xff0c 这一点想必大家都清楚了吧 不过 xff0c 当程序加载到内存后 xff0c 除此之外还会额外生成两个组 xff0c 那就是栈和堆 栈是用来存储函数内部临时使用的变量 xff08 局
  • winform-日记

    1 Form的属性TopLevel设置为false xff0c 就相当于usercontrol的功能了 xff0c 可以被包含在容器中 xff0c 只不过需要动态在代码中加载 xff0c usercontrol则可拖拽
  • C# DataTable用法详解

    添加引用 using System Data 创建表 创建一个空表 DataTable dt 61 new DataTable 创建一个名为 34 Table New 34 的空表 DataTable dt 61 new DataTable
  • C#操作SQLite数据库增、删、改、查 实例

    最近项目上要使用SQLite数据库 xff0c 不怕大伙笑话毕业四年多了 xff0c 一直使用Oracle或者MySQL或者SQLServer xff0c 但是真的是没有用过SQLite数据库 xff0c 据说非常轻量级 xff0c 但是真
  • halcon相机标定及畸变矫正

    1 halcon相机标定和图像矫正 对于相机采集的图片 xff0c 会由于相机本身和透镜的影响产生形变 xff0c 通常需要对相机进行标定 xff0c 获取相机的内参或内外参 xff0c 然后矫正其畸变 相机畸变主要分为径向畸变和切向畸变
  • C# SQLite 数据库操作实例2

    运行环境 xff1a Window7 64bit xff0c NetFramework4 61 xff0c C 7 0 参考 xff1a SQLite 官网SQL As Understood By SQLiteSystem Data SQL
  • 计算机代码内大数据内存堆栈溢出问题

    1 因为不管是c 43 43 还是c xff0c 他们的对象内存都是在堆栈中分配的 xff0c 加入堆栈中有2G空闲空间 xff0c 但是这2G的空间不是连续的 xff0c 也就是说 最大的一块可供缓存数据的内存空间是这2G空间里最大的一片
  • 提高SQLITE 大数据量操作效率的方法

    SQLite 作为一个轻量级嵌入式数据库 xff0c 还是非常好用的 批量插入1000条记录 xff0c 居然耗时 2 分钟 xff01 以下是测试代码 using System Data using System Data Common
  • 在C#项目中使用SQLite(环境安装问题)

    下面这两个是不同的 xff1a 1 System Data SQLite xff08 http system data sqlite org index html doc trunk www index wiki xff09 2 SQLit
  • sqlite3数据库最大可以是多大?可以存放多少数据?读写性能怎么样?详述

    sqlite是款不错的数据库 xff0c 使用方便 xff0c 不需要事先安装软件 xff0c 事先建表 很多人担心它的性能和数据存储量问题 比如有的网友问 xff1a Sqlite数据库最大可以多大呀 xff1f 会不会像acc数据库那样
  • c#子线程中打开系统文件操作对话框

    出错环境 多线程接收文件的时候 需要打开一个SaveFileDialog对象 并调用ShowDialog 方法 出错代码 nbsp html nbsp nbsp nbsp view plain nbsp copy void nbsp thr