Articles of .net

Windows RegKey – 默认浏览器应用程序path

什么RegKey可以从默认的浏览器应用程序的path? 从C#/ .NET获得它的最佳方式?

C# – 方法必须有返回types

我有问题调用C#中的方法,我不断收到消息“方法(计算)必须有一个返回types”。 using System.Diagnostics; namespace WindowsFormsApplication1 { public partial class Form1 : Form { public Form1() { InitializeComponent(); } } public class Hello : Form { public string test { get; set; } calculate(); } public class Hello2 : Form { public void calculate() { Process.Start("test.exe"); } }

用C#和远程桌面问题捕获屏幕

我有一个C尖锐的控制台应用程序捕获多次MS Word文档的屏幕截图。 它工作的很好,但是当我把这个应用程序在远程的Windows XP机器上,它工作正常,而我在远程即我的远程桌面是可见的,但如果我运行我的应用程序,离开远程桌面(尽量减less,甚至没有注销,我想做 )截图需要的是空白的! 屏幕截图应用程序由作为SYSTEM用户运行的服务运行。 即使在没有用户连接的情况下,我如何保持GUI的活动状态? 这是我使用的代码: public Image CaptureWindow(IntPtr handle) { // get te hDC of the target window IntPtr hdcSrc = User32.GetWindowDC(handle); // get the size User32.RECT windowRect = new User32.RECT(); User32.GetWindowRect(handle, ref windowRect); int width = windowRect.right – windowRect.left; int height = windowRect.bottom – windowRect.top; // create a device context we […]

.NET Core性能计数器的故事是什么?

在Windows下,可以使用以下命令读取.NET性能计数器: 性能监视器 C#使用PerformanceCounter WMI和查询.NET相关的类 考虑到最近发布的.NET Core以及这样的应用程序也可以在Linux中运行的事实,如何访问Windows上当前可用的.NET相关统计信息?

是否有可能等到其他线程处理过程input消息?

我想模拟用户input到其他窗口可靠。 我为此使用SendInput ,但是之后我需要等到目标应用程序在发送更多消息之前处理input。 据我所知, SendInput ,尽pipe它的名字,真正的消息发送到队列,不等待,直到他们被处理。 我的尝试是基于这个想法,直到消息队列至less一次是空的。 因为我不能直接检查其他线程消息队列(至less我不知道这样做),所以我使用AttachThreadInput将目标线程的队列附加到该线程的队列,然后使用PeekMessage进行检查。 为了检查function,我使用一个窗口和一个button的小应用程序。 当点击button时,我调用Thread.Sleep(15000)有效地停止消息处理,从而确保在接下来的15s消息队列不能为空。 代码在这里: public static void WaitForWindowInputIdle(IntPtr hwnd) { var currentThreadId = GetCurrentThreadId(); var targetThreadId = GetWindowThreadProcessId(hwnd, IntPtr.Zero); Func<bool> checkIfMessageQueueIsEmpty = () => { bool queueEmpty; bool threadsAttached = false; try { threadsAttached = AttachThreadInput(targetThreadId, currentThreadId, true); if (threadsAttached) { NativeMessage nm; queueEmpty = !PeekMessage(out nm, hwnd, […]

为什么没有Microsoft.Win64命名空间?

我们有一个Microsoft.Win32命名空间,但它是保证在64位Windows环境中工作? 对于64位的情况,是否需要有相同的定义?

.NET或Windows同步基元性能规范

我目前正在撰写一篇科学文章,在那里我需要非常确切地引用。 有人可以指向我MSDN,MSDN文章,一些发表的文章来源或一本书,在那里我可以findWindows或.NET同步原语的性能比较。 我知道这些是在下降的性能顺序:互锁API,关键部分,.NETlocking语句,监视器,互斥体,EventWaitHandle,信号量。 非常感谢, Ovanes PS我发现了一本好书: Joe Duffy在Windows上的并发编程 。 本书是由.NET Framework的头部并发开发人员之一编写的,其内容非常精彩,有很多解释,如何工作或实现。

C#同步进程启动

我试图从一段代码开始一个进程,但我希望代码暂停执行,直到进程完成并退出。 目前,我正在使用System.Diagnostics.Process.Start()类来启动(特别是)卸载程序,之后执行的代码在继续执行之前依靠安装程序的卸载程序完成。 这是代码。 using System.Diagnostics; var procStIfo = new ProcessStartInfo("cmd", "/c " + variableContainingUninstallerPath); procStIfo.RedirectStandardOutput = true; procStIfo.UseShellExecute = false; procStIfo.CreateNoWindow = true; var proc = new Process(); proc.StartInfo = procStIfo; proc.Start();

C# – 删除文本文件中的重复行

有人可以演示如何检查一个文件的重复行,然后删除任何重复覆盖现有的文件,或删除重复的行创build一个新的文件

当没有用户login时显示GUI的Windows服务

是否可以通过Windows 7的login屏幕上的Windows服务显示对话窗口(当没有用户login时)? 我发现这篇文章解释了如何在login的用户桌面上显示一个窗口,但是如何在没有用户login的时候这样做呢? 我正在考虑尝试自动login一个用户,然后在他的桌面上显示窗口,但可以直接在login屏幕上显示它?