Articles of .net

是否有附加到标准输出的缓冲区大小?

我试图find一些有关Windows上stdout的数据限制的信息。 我似乎无法findMSDN上的信息。 有多less数据可以写入标准输出有限制? 如果是这样,如果达到限制,会发生什么? 数据丢失了吗? 如果stdout被redirect(例如,通过从.Net启动进程并使用ProcessStartInfo.RedirectStandardOutput属性),那么对于可以写入多less数据有什么影响? 当我从调用过程的stdoutstream中读取时,是否会影响限制? 这些限制是否与命名pipe道有关?

在Windows环境中使用Etsy的StatsD

我需要在Windows环境中使用Etsy's Statsd ? 我的意图是创build一个.NET客户端使用Statsd。

如何阅读设备和驱动程序版本

我真的很难搞清楚如何做到这一点。 基本上,我想要做的就是读取连接到机器上的所有设备,并读取驱动程序制造商和设备驱动程序的版本。 这是您可以在设备pipe理器中获得的信息,但是我想要在程序中执行此操作。 我做了很多search和阅读,找不到任何有助于我这样做的事情。 有这个WMI的东西应该工作,但我找不到任何工作的例子。 我已经阅读并阅读了关于WMI的知识,但仍然无法弄清楚。 那里有没有可以解释WMI比微软网站更好的教程? 我需要这是下来的蜡笔水平。

.NET中的窗口句柄可以改变它的值吗?

在.NET进程的生命周期中,执行System.Windows.Forms.Form的句柄,可以说Application.Run(form)使用的主表单实际上改变了它的值,也就是说,如果使用不同的进程,例如IntPtr handle = User32.FindWindow(null, "Name") ,是否有一种情况下,该处理可能会失效.NET运行时? 编辑 我需要知道句柄,因为我想为IPC使用SendMessage和WM_COPYDATA等。

我怎样才能找出谁在Windows中使用.NET创build一个文件?

我需要找出谁使用.NET创build了一个文件 我已经尝试了以下内容: string FileLocation = @"C:\test.txt"; FileInfo droppedFile = new FileInfo(FileLocation); FileSecurity fileSecurity = droppedFile.GetAccessControl(); IdentityReference identityReference = fileSecurity.GetOwner(typeof(NTAccount)); string userName = identityReference.Value; Console.WriteLine(userName); 所有这些返回是“BUILTIN \ Administrators” 我在这里做错了什么? 因为当我在资源pipe理器中查看C:\,所有者显示正确的用户名,当我执行上面的代码时,它返回“BUILTIN \ Administrators” 这甚至不是一个域和用户名,我认为这是一个安全组。 任何帮助赞赏。

在Windows 8上使用简单的Windows窗体/ WPF应用程序是否适用于平板电脑?

我正在开发一个需要在Windows 7,Windows 8和Windows 8 Tablet上工作的C#.NET业务应用程序。 “简单”的Windows窗体应用程序在Windows 8桌面和平板电脑上都可以工作吗? 有没有Windows 8平板电脑模拟器? 有没有其他的select?

Windows安全性自定义loginvalidation

我正在创build一个Xaml / C#应用程序,我希望它popup一个login提示。 我想知道是否有可能使用CredUIPromptForWindowsCredentials。 显示Windows安全对话框 获取input的用户名和密码 执行自定义validation 如果validation成功 – >继续应用程序 否则如果validation失败 – > – 用户input无效的用户名或密码 我已经看了Windows安全login窗体? 和http://www.pinvoke.net/default.aspx/credui/creduipromptforwindowscredentials.html?diff=y但他们不解释如何处理validation。 我真的很喜欢一个小例子,如果用户input用户名=“Bo”和密码=“123”,则显示错误信息并允许用户再次尝试。 该应用程序将被安装在多台电脑上。 或者这是不可能的? 更新 受此问题的答案在Windows Vista / 7的C#中显示身份validation对话框的启发 我修改了代码以按预期方式工作。 请注意,validation部分仅用于概念validation。 WindowsSecurityDialog.cs public class WindowsSecurityDialog { public string CaptionText { get; set; } public string MessageText { get; set; } [DllImport("ole32.dll")] public static extern void CoTaskMemFree(IntPtr ptr); [StructLayout(LayoutKind.Sequential, CharSet […]

实施Explorer ContextMenu并将多个文件传递给一个程序实例

情况 我有一个通过CLI接受多个文件的第三方GUI应用程序,例如: MyProgram.exe "file1" "file2" 然后,所有文件一次加载到应用程序的同一个实例中。 为了优化我的时间,我想通过右键单击Windows资源pipe理器中的某些文件来加载多个文件(例如: select5个文件>右键单击>select“在MyProgram中打开”命令 ) 我知道如何创build所需的registry项,以在特定文件types的上下文菜单中添加该命令,这不是问题。 问题 这第三方程序没有任何驱动程序,shell扩展或方法,可以从上下文菜单中捕获多个文件,所以而不是如果我从资源pipe理器中select2个文件,每个文件打开一个单独的程序实例,我没有开发驱动程序的想法,所以一个驱动程序不是我要找的。 焦点 我愿意提出build议,也许这不是有效的方法,但似乎是最简单的方法: 我的想法是开发一个迷你的CLI应用程序来捕获这些多个文件(可能基于Windows消息或在没有活动,我不知道这就是为什么我问),将这些文件/参数写入一个文本文件,然后join所有参数在一行中调用我的第三方程序与这些参数一次加载在这个程序的单个实例的所有文件。 换句话说,只需一个简单的加载程序就可以在select多个文件的同时从上下文菜单中使用它来在第三方应用程序中同时打开所有文件。 题 首先,我想知道是否存在一个已知的术语来命名这个应用程序的东西,它能够在同一个实例中加载多个文件,从资源pipe理器中select文件,然后select上下文菜单。 我想研究这个术语。 在VB.NET / C#控制台应用程序中,哪个可能是最有效的方法来完成这个任务? (不是司机) 如何开始发展呢? 来自已知页面的任何现有的源代码示例,如codeproject …?

如何在MS Windows上加载GTK Sharp主题

我正在MS Windows上使用Xamarin Studio 5.4编写一个GTK Sharp(v2.12)应用程序。 安装的Mono版本是3.2.3(但我使用.Net工具链进行编译,因为Xamarin不允许我使用Mono工具链进行编译)。 这种情况是,当我从Xamarin工作室运行应用程序或使用单声道,那么我有一个相对漂亮的外观和感觉,但是当我运行应用程序使用.Net(双击可执行文件),那么外观和感觉是可怕。 我试图欺骗应用程序来加载一个体面的主题…但是,当我从.Net(但是当我使用单声道然后很容易看到更改)它什么都不做。 这是我试过的代码,但不起作用(我有一个GTK主题rc文件的本地副本): // It works on Mono, but not on .Net Gtk.Rc.Parse("Resources/GTK/windows-theme.gtkrc"); 我也试着做: // This does not work at all (on MS Windows) Gtk.Settings.Default.ThemeName = "MS-Windows"; 但即使使用单声道引擎,这也不会改变任何事情。 这是应用程序看起来如何使用单声道: 以及它如何运行在.net引擎下: 感谢您的关注 :) 。

Windows操作系统和内存pipe理 – 应用程序最小化时会发生什么?

我为这个问题提出了后代的原因和普遍的兴趣。 几年前,我注意到Windows中的一个奇怪的行为。 我知道这在XP中工作,当时它也在Windows 2000甚至98,我会认为这种行为仍然适用于Windows 7。 要设置我的问题,请按照以下步骤尝试此实验。 打开任务pipe理器并导航到进程选项卡。 打开你使用的应用程序,你知道消耗相当数量的内存(一个Web浏览器应该工作正常),并在任务pipe理器中find该过程。 现在通过打开窗口,文档,网页等来使用应用程序,直到应用程序的内存使用量显着增长。 记下应用程序的内存使用情况,并最小化应用程序 – 应用程序正在使用的内存量将显着减less。 最后,恢复应用程序。 在恢复窗口之后,应该确保应用程序的内存使用量应该稍微高一点,但不要超过最小化应用程序之前的位置。 这与任何基于GUI的应用程序都非常一致,但是对于更大的应用程序来说,它肯定更加深刻 题 在操作系统内部,发生什么过程迫使这个(假设的)垃圾回收发生? 而且,通过COM或者一些.Net调用,有一种方法可以在不最小化应用程序的情况下强制这个过程? 如果是这样,请提供源代码。 语言并不重要。 如果你像我一样,你可能会同时打开很多应用程序。 内存使用可以爬起来……在你知道它之前,你需要closures几个应用程序来释放资源。 如果我至less可以将软件集成到我已经控制一个机制来强制从操作系统中进行垃圾收集,那就好了。 我知道.Net中有一个GC对象,你可以根据需要调用垃圾清理。 但是,它并不与应用程序最小化时发生的内存清理的性质有关。 我希望这是一个令人头疼的问题,在多年的好奇心之后,有人可以给我一个很好的技术解释。 页面文件进一步深入“兔子洞” 有趣的东西已经作为Kragen&Alex K.的这个问题的答案发布了。在阅读他们都发布的知识库文章时,我发现也有一种方法可以防止这种行为发生。 什么时候你想要防止这种分页释放的例子? 我正在尝试阅读文档以尽可能多地了解这一点。 很多这些信息对我来说都是新的,因为我从来不需要在.Net应用程序中实现这些。 考虑一个用例会帮助我理解为什么以及何时我想要避免这种行为的推理。