Articles of .net

如何在C#中获取通用文件types图标?

正如在这个问题上获得常见文件types的图标 ,它是很有可能的Windows程序使用C ++ Shell API获取注册文件types的图标。 这些图标可能存在也可能不存在于磁盘上 – 例如,我们想制作自己的自定义文件浏览器,并且想要显示与文件相关的系统图标。 是否有一个本地的C#方式来获取各种文件types的图标(如果是这样,如何),或者必须通过PInvoke与shell API来完成? 作为一个后续,如果有一个本地.NET的方式,是否有一个跨平台的方式来做到这一点?

Visual Basic捕获cmd的输出

我希望Visual Basic能够在目录“C:\ projectTest \”上运行“make”命令。 我试图用这个: Dim output As String = String.Empty Using Process As New Process Process.StartInfo = New ProcessStartInfo("cmd") Process.StartInfo.WorkingDirectory = "C:\projectTest\" Process.StartInfo.UseShellExecute = False Process.StartInfo.CreateNoWindow = True Process.StartInfo.RedirectStandardInput = True Process.StartInfo.RedirectStandardOutput = True Process.StartInfo.RedirectStandardError = True Process.Start() Process.BeginOutputReadLine() AddHandler Process.OutputDataReceived, _ Sub(processSender As Object, lineOut As DataReceivedEventArgs) output += lineOut.Data + vbCrLf End […]

在Windows中对程序进行基准testing的最佳方式是什么?

我需要在Windows中的.NET程序(C#)上做一些性能基准testing,但是我没有在Windows环境中做很多基准testing。 我已经考虑使用Windows 2000 / XP性能监视器与自定义计数器,但我不认为这是相当我想要的。 在Windows XP中有没有好的系统设备,或者我需要使用System.Diagnostics.Stopwatch [编辑]和写入文本日志手动解释,还是有其他的东西? 编辑:有什么超越System.Diagnostics.Stopwatch ?

如何从.NET应用程序启动`powercfg.exe -energy`?

当我 using (var process = new Process { StartInfo = new ProcessStartInfo { FileName = "powercfg.exe", Arguments = "-energy", RedirectStandardOutput = true, UseShellExecute = false, } }) { process.Start(); process.WaitForExit(); } 它输出: 一个能源诊断和技术协会(energy.dll)的图书馆服务。 翻译成英语: 能耗效率诊断库(energy.dll)无法加载。 即使作为pipe理员运行。

如何以编程方式重新启动Windows资源pipe理器进程

我正在一个Windowsshell扩展,不幸的是,当对DLL进行更改时,我必须重新启动Windows资源pipe理器(因为它保持在内存中的DLL)。 我从迪诺埃斯波西托发现了这个节目,但它对我不起作用。 void SHShellRestart(void) { HWND hwnd; hwnd = FindWindow("Progman", NULL ); PostMessage(hwnd, WM_QUIT, 0, 0 ); ShellExecute(NULL, NULL, "explorer.exe", NULL, NULL, SW_SHOW ); return; } 有人可以分享一些东西吗? PS我意识到,我可以去任务pipe理器,并杀死探险家的过程,但我只是想这样做的懒惰的方式。 此外,这使自动化。 PPS我正在使用.NET进行开发,但shell重启function可能是C,C ++或.NET语言。 它只是一个小型的独立可执行文件。

写给远程MSMQ

好的,这是一个非常简单和根本性的问题。 如果我在Windows机器A上有一个应用程序,想要写入到Windows机器B上的队列,是否需要在机器A上安装MSMQ(即使没有队列)? 我刚刚开始为我的应用程序使用队列,并试图找出一些基础知识。 谢谢

为什么Console.Readline没有按预期执行

我有下面的代码来处理。 我在这里的问题是代码运行while循环,而不是等待在行上的inputString temp = Console.ReadLine() 。 需要帮助了解为什么以及如何修复请。 提前致谢! /*Banker's algorithm Implementation*/ class Program { static void Main(string[] args) { int n = 0;//number of resources we will be dealing with int proc_num = 0;//Total number of processes to share available resources IDictionary<String, SysProcess> processes = new Dictionary<String, SysProcess>(); IDictionary<String, int> MaxR = new Dictionary<String, int>();// […]

如何确定一个System.Diagnostics.Process是32位还是64位?

我试过了: process.MainModule.FileName.Contains("x86") 但它引发了一个x64进程的exception: Win32Exception:只有ReadProcessMemory或WriteProcessMemory请求的一部分完成

编写.NET以外的Windows客户端应用程序的最佳方法是什么?

我试图评估是否应该使我的新的Windows应用程序的.NET框架的要求。 我相信.NET是编写Windows客户端应用程序的最好和最有效的方式,所以下一个最好的select是多么痛苦。 具体来说,我试图避免安装.NET客户端configuration文件,下载28MB,如果它像常规的.NET Framework安装程序,永远。 我之前使用过wxWidgets和WTL,认为两者都是很好的select。 静态链接的wxWidgets可执行文件是30MB,但将被打包。 WTL有一个小脚印,但用丑陋的代码创build。 我已经使用了一些微星创造者,但它不是WiX或NSIS,这似乎是最好的免费select。 我正在寻找任何build议,使用Client Profile安装程序的经验,使用小型自定义业务应用程序的经验或任何相关的build议。 编辑:我只在这里赚了几千块钱,所以我正在寻找一些免费或便宜的东西(在我已经拥有的Visual Studio之后)。 我不介意用一种新的语言学习,但我更喜欢一种正在使用的方法。

如何将文件放入回收站而不是删除?

程序解决scheme当然…