C#
文章平均质量分 70
l198738655
这个作者很懒,什么都没留下…
展开
-
C# WIN10 WinForm调用大漠插件3.1233 最后免费版
比如说有一个COM对象它内部有一个静态变量 gHello,那么这个对象无论生成多少实例对于gHello在内存中只能有一份,那么如果有两个不同的实例在两个线程里面同时去读写它,就有可能出错,所以就要就要有种机制进行同步保护,STA或者MTA就是这种机制。支持STA的COM对象只能在创建它的线程里被使用,其它线程如果再创建它就会失败。COM库在进程中创建一个内存结构,这个内存结构在整个进程中只能有一个,然后让它和调用CoInitializeEx的线程相关联。然后到你的C#工程里,右键菜单中选择“粘贴”。原创 2024-04-27 17:54:53 · 1586 阅读 · 0 评论 -
C# Winform 跨线程更新UI控件常用方法汇总
C#Winform编程中,跨线程直接更新UI控件的做法是不正确的,会时常出现“线程间操作无效: 从不是创建控件的线程访问它”的异常。处理跨线程更新Winform UI控件常用的方法有4种: 1. 通过UI线程的SynchronizationContext的Post/Send方法更新; 2. 通过UI控件的Invoke/BeginInvoke方法更新; 3. 通过BackgroundWorker取代Thread执行异步操作; 4. 通过设置窗体属性,取消线程安全...转载 2021-09-06 09:36:14 · 1813 阅读 · 0 评论 -
C# WinForm程序向控制台输出信息
控制台作为信息显示窗口对于调试程序查找程序BUG有诸多好处,所以给GUI程序绑定一个控制台窗口用于显示程序运行时的状态是非常有必要的,否则就需要用WinForm的控件自己去实现了。首先想让WinForm程序绑定控制台窗口需要调用Windows API,需要先导入命名空间:using System.Runtime.InteropServices;然后导入dll:[DllImport("kernel32.dll")]public static extern bool AllocCons...原创 2021-08-10 16:08:51 · 10028 阅读 · 2 评论