Articles of .net

为什么System.Windows.MessageBoxImage具有相同值的枚举子项?

我试图通过MessageBoxImage枚举编写我自己的抽象,并看到MessageBoxImage被定义为: namespace System.Windows { public enum MessageBoxImage { None = 0, Error = 16, Hand = 16, Stop = 16, Question = 32, Exclamation = 48, Warning = 48, Asterisk = 64, Information = 64, } } Show方法如何确定是显示错误图像还是手形图像? 我如何编写一个需要MessageBoxImagetypes的方法,并返回一个映射到MessageBoxImagetypes的CustomMessageBoxImagetypes,因为我不能在同一个switch语句中同时包含MessageBoxImage.Error和MessageBoxImage.Hand?

Windows RT .NET兼容性

我只需要知道是否需要相同的框架来开发用于Windows 8(Windows RT)和PC的应用程序,或者平板电脑仍然使用.NET Compact Framework。

如何在按下电源button一段时间后拒绝关机?

在大多数较新的计算机上,您可以通过按几秒钟的电源button来closures硬盘。 但是我想完全防止这个。 您可以在Windows控制面板中防止某些软件事件,如睡眠,暂停,hibernate和“按电源button”事件; 您也可以使用一些Win32和WDI编程来捕捉和处理/拒绝这些事件,但是当您长时间按住button时似乎不会停止机械电源 。 我猜电源button是硬连线的电源供应器,不要等待操作系统,当你按住几秒钟? 或者有什么办法来防止这种情况下的代码? 我是一个.NET开发人员。 Whooaaa …! 很多人认为不这样做 – “你不拥有我的电脑或我的操作系统”, – “你在开发SkyNet”等:)这个应用程序是一个高度定制和封闭的解决scheme,为一些客户。 它是在Windows XP Embedded上运行的自定义硬件上的自助服务terminal应用程序,并使用触摸屏。 这不是公开的。

防止单个可执行文件的多个进程实例

我正在使用.NET与C#。 我想防止同一个可执行文件的两个实例同时运行,但是我不想阻止从另一个文件夹运行相同的进程。 例如,我有一个在两个不同位置的可执行文件: C:\ MyProject的\主\ Program.exe文件 C:\ MyProject的\从\ Program.exe文件 这些是相同的.exe文件,但在两个不同的位置。 我想要允许一个从Master文件夹运行的Program.exe实例和一个来自Slave文件夹的实例,但是没有任何两个实例。 我试图通过检查具有相同名称(Process.GetProcessesByName)的进程数量来做到这一点,但我不能区分这两个。 我发现的最接近的是从过程中获取模块。 列表中的第一个是exe的ProcessModule。 但是我不确定这是否会成为名单上的第一名。 有没有保证,还是有解决问题的更好的解决办法?

使用C#禁用Windows的animation效果

我试图禁用窗口中的“褪色”animation,每当你打开或最大化/最小化窗口时发生。 当然,这可以通过在最小化和最大化时取消animation窗口的checkbox来手动完成 我试图通过SystemParametersInfo这是我的电话: [DllImport("user32.dll", SetLastError = true)] [return: MarshalAs(UnmanagedType.Bool)] static extern bool SystemParametersInfo(uint uiAction, uint uiParam, bool pvParam,uint fWinIni); private static UInt32 SPIF_SENDCHANGE = 0x02; private static UInt32 SPI_SETUIEFFECTS = 0x103F; public static void Main() { bool res= SystemParametersInfo(SPI_SETUIEFFECTS, 0, false, SPIF_SENDCHANGE); } result值总是为True ,所以我知道函数调用成功。 但我看不到任何结果… Windows仍然保持animation我调整任何窗口。 我编译为AnyCPU,作为pipe理员在Windows 10上运行。 对于@cody灰色这是代码(将ref关键字添加到ai参数,并将Marshal.Sizeof(ai)转换为uint)。 [StructLayout(LayoutKind.Sequential)] public struct ANIMATIONINFO { […]

如何debugging事件查看器中logging的.NET错误?

嗨,我发现我的应用程序会导致一些事件日志中logging的错误。 它指出: NET Runtime 2.0 Error EventType clr20r3, P1 *****.exe, P2 1.0.0.0, P3 4b2a572f, P4 system.web.services, P5 2.0.0.0, P6 4889df18, P7 bc, P8 65, P9 system.net.webexception, P10 NIL. 我怎么知道发生了什么事? 我已经尝试过本地的应用程序,一切工作正常。

Python脚本输出使用C#redirect

这个问题可能看起来像重复,我已经尝试了所有build议的解决scheme,但徒劳无功,我想使用此代码redirectpython脚本输出: System.Diagnostics.Process proc = new System.Diagnostics.Process(); proc.StartInfo.FileName = "python.exe"; proc.StartInfo.Arguments = Application.StartupPath.Replace("\\bin\\Debug", "") + "\\scripts\\test.py"; proc.OutputDataReceived += OutputDataReceived; proc.ErrorDataReceived += ErrorDataReceived; proc.StartInfo.RedirectStandardOutput = true; proc.StartInfo.UseShellExecute = false; proc.StartInfo.CreateNoWindow = true; proc.StartInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden; proc.Start(); //proc.WaitForExit(); StringBuilder q = new StringBuilder(); while (!proc.HasExited) { q.Append(proc.StandardOutput.ReadToEnd()); } string r = q.ToString(); r = proc.StandardOutput.ReadToEnd(); MessageBox.Show(r); } private […]

在辅助显示器上全屏显示

如何编程一个dotNet Windows(或WPF)应用程序,以便在辅助监视器上全屏显示?

有没有从命令行确定.NET Framework版本的方法?

要排除安装故障,有时候我只想快速回答安装.NET的版本。 除了查看目录之外,有没有一种方法可以确定标准Windows系统上的.NET Framework版本? 注:这不是一个开发机器,只是开箱即用的窗口 以下的工作,但我正在寻找一个更简单的方法。 dir%WINDIR%\ Microsoft.Net \ Framework \ v * Directory of C:\Windows\Microsoft.Net\Framework 07/13/2009 07:20 PM <DIR> v1.0.3705 07/13/2009 07:20 PM <DIR> v1.1.4322 01/20/2010 01:16 PM <DIR> v2.0.50727 07/13/2009 09:37 PM <DIR> v3.0 01/20/2010 01:02 PM <DIR> v3.5 02/10/2010 03:20 AM <DIR> v4.0.21006 更新:不是一个解决scheme,但另一个很酷的目录格式化列表 dir%WINDIR%\ Microsoft.Net \ Framework \ v * / O:-N […]

如何在Visual Studio 2010中设置环境variables?

如何在Visual Studio 2010中设置环境variables? 我发现这个网页 。 其中说: 从项目菜单中select属性。 在左侧窗格中,select“configuration属性”,然后select“环境”。 但是当我select“configuration属性”时,没有“环境”选项: 这是VS 2008中的一个例子: 但是在VS 2010中它是如何完成的?