最近我尝试从一个线程(UI线程除外)访问一个文本框,并抛出异常.它说了一些关于"代码不是线程安全的",所以我最终编写了一个代表(来自MSDN的示例帮助),然后调用它.
但即便如此,我也不太明白为什么所有额外的代码都是必要的.
更新:如果我检查,我会遇到任何严重的问题
Controls.CheckForIllegalCrossThread..blah =true
Run Code Online (Sandbox Code Playgroud) 我已经看过很多关于c#Indexers的例子,但它在现实生活中会以什么方式帮助我.
我知道如果它不是一个严肃的功能,C#guru就不会添加它,但我不能想到使用索引器的真实世界情况(不是foo bar的东西).
注意:我意识到存在一个相关的问题,但它对我没有多大帮助.
不,我认真的.
最近,我读到当PC的压电蜂鸣器以一定的频率振动时,声音会击退蚊子.
真的吗?
如何在C#中以编程方式访问PC蜂鸣器(而不是扬声器)?
我不知道蚊子,但我的头疼得像疯了似的.啊...!
我意识到我必须DllImport
使用perlembed方法
perl_parse
perl_alloc
perl_free
Run Code Online (Sandbox Code Playgroud)
等等.,
但不确定如何使用函数参数来DLLImport
特别使用perl_parse
方法.
我也意识到一个相关的问题已经存在,几乎存在,但OP仍然通过创建一个C包装器然后在C#中使用它来解决.
他说他无法DLLimport PERL_SYS_INIT3.
所以我的问题是如何只使用C#正确包装它们并使用它?
什么是可用于皮肤化/在.Net Winforms中创建应用程序的开源替代品
我已经阅读过有关使用UXTheme库的内容(我不知道如何去da :) :)但是这对Win XP到Win7有效
我不想读串口或其他可能的简单快捷方式.我想知道如何使用C#读取笔记本电脑中的USB端口.无论您是建议网站还是解释流程,我都将非常感谢您的帮助
我需要杀死Windows资源管理器的进程(explorer.exe)
让我说我使用本机NT方法TerminateProcess
它的工作原理,但问题是探险家再次启动,无论如何,可能是Windows正在这样做.当我用Windows任务管理器杀死explorer.exe时,它不会回来,它会被杀死.
我想做任务管理员通过我的申请做的事情.
编辑:
感谢@sblom我解决了它,在注册表中快速调整诀窍.虽然它是一个聪明的黑客,显然有任务的人有一个更干净的方式,这就是说,我决定现在用@ sblom的方式.
当调用特定的Win32 API函数(从C#到Interop)时,它会失败并返回负的错误代码
背景:
我在TAB内运行的Windows 8操作系统上执行此操作.
功能签名
[DllImport("dxva2.dll", EntryPoint = "GetMonitorCapabilities", SetLastError = true)]
[return: MarshalAs(UnmanagedType.Bool)]
public static extern bool GetMonitorCapabilities(
IntPtr hMonitor, ref uint pdwMonitorCapabilities, ref uint pdwSupportedColorTemperatures);
Console.WriteLine(Marshal.GetLastWin32Error());
NativeMethods.GetMonitorCapabilities(hnd,ref x,ref y);
Console.WriteLine(Marshal.GetLastWin32Error());
Run Code Online (Sandbox Code Playgroud)
以上代码报告
0-1071241844
根据此链接,我认为错误代码范围在0到15999之间