Articles of .net

Windows – 用C#命名pipe道性能build议

我目前正在使用.NET / C#评估Windows上IPC的命名pipe道。 我目前正在寻找一个单一的生产者,一个消费者的情况。 有没有好的性能考虑指导方针? 在我的第一个testing案例中,我比较了大消息和小消息的速度,似乎是大(64k)消息发送的速度和小(48字节)的包一样快。 这是与默认参数。 我可能会添加更多的testing场景,但是这非常耗时,因此我正在寻找指导方针。

.NET:ListView的TopItem属性失败,并显示“ShowGroups”= true

我有一个ListView显示约300项。 当有东西被改变,我需要重新填充列表,我希望滚动位置不变,所以相同的项目仍然可见,并在列表中的相同位置。 “EnsureVisible”方法很糟糕,因为它符合“Visible”,而不是相同的位置(结果是感兴趣的项目总是滚动到列表的底部)。 我对这个问题的解决scheme是保存(我的)“ID”的List-> TopItem,重新填写列表,然后调用List-> TopItem = newItemWithSameID(需要设置两次,出于某种原因工作)。 这对于基本的“未分组”列表来说是一种魅力。 但是 – 如果列表中有“ShowGroups = true”,这是行不通的。 TopItem属性将永远是列表中的第一个项目,而不是文档中所说的第一个VISIBLE项目。 有解决scheme吗? 我search了一下,发现了另一个失去灵魂的同样的问题。 他有一个相当有趣的讨论微软的支持,没有成功。(http://social.msdn.microsoft.com/Forums/en/winforms/thread/8a81c5a6-251c-4bf9-91c5-a937b5cfe9f3)。 所以 – 我的问题是:有没有解决方法? 我真的需要把这个列表分组,当我的列表跳转时,我真的很讨厌。 我不会在这里粘贴任何代码,因为所有需要重现的代码都在上面的讨论中。 非常感谢!

捕获屏幕截图包括.NET中的半透明窗口

我想要一个相对黑客的方式来做到这一点,任何想法? 例如,下面的截图不包含半透明窗口: Public Class Form1 Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Shown Text = "Opaque Window" Dim win2 As New Form win2.Opacity = 0.5 win2.Text = "Tranparent Window" win2.Show() win2.Top = Top + 50 win2.Left = Left() + 50 Dim bounds As Rectangle = System.Windows.Forms.Screen.GetBounds(Point.Empty) Using bmp As Bitmap = […]

在Windows XP,Vista和7上安装了什么版本的.NET框架?

我有一个使用.NET框架3.5的应用程序。 我正在为一所大学build立这个应用程序来帮助学生学习。 大多math生通常使用Windows XP SP2,Windows Vista或Windows 7.(对不起Mac用户!Mac版本将在6个月左右出现)在Windows XP,Vista和7上安装了.NET Framework的哪个版本; 我的应用程序会运行在所有这些平台上吗?

如何使用C#代码获取IIS虚拟目录和Web应用程序的物理path?

我正在用C#编写一个Web应用程序部署validation工具。 我需要检查Web Applicatons和Virtual Folders的物理文件夹结构。 这可以在C#中完成吗? 或者更一般地说,通过C#代码与IIS交互? 我发现这个链接,并会读回家。 谢谢。

如何以编程方式停止Windows服务

关于编程Windows服务:如何停止我的Windows服务? 这是一个非常简化的示例代码(C#): // Here is my service class (MyTestService.cs). public class MyTestService:ServiceBase{ // Constructor. public MyTestService(){ this.ServiceName = "My Test Service"; return; } }; // My application class (ApplicationClass.cs). public static class ApplicationClass{ // Here is main Main() method. public static void Main(){ // 1. Creating a service instance // and running it using ServiceBase. […]

如何使用SPI_SETWORKAREA标志调整桌面工作区的大小?

我一直在尝试调整桌面工作区域(窗口最大化的区域)。 我find了所需的API,但似乎无法调整工作区域的大小。 它什么也没有做。 我使用Windows 7旗舰版64位,所以我也尝试编译它在x64'模式',仍然没有运气。 有人能给我一个正确的方向? 这是我到目前为止: [DllImport("user32.dll", EntryPoint = "SystemParametersInfoA")] private static extern Int32 SystemParametersInfo(Int32 uAction, Int32 uParam, IntPtr lpvParam, Int32 fuWinIni); private const Int32 SPIF_SENDWININICHANGE = 2; private const Int32 SPIF_UPDATEINIFILE = 1; private const Int32 SPIF_change = SPIF_UPDATEINIFILE | SPIF_SENDWININICHANGE; private const Int32 SPI_SETWORKAREA = 47; private const Int32 SPI_GETWORKAREA = 48; […]

在C#中确定正版Windows安装

如果我想确定一个用户是否拥有一个真正的Windows副本,那么我怎样才能在C#中做到这一点? 我可以与Windows Genuine Advantage集成吗?

IP端点0.0.0.0:13000上已经有一个监听器。 ?? (使用WCF的TCP)

我试图找出为什么即使在重新启动计算机后使用该端口! System.ServiceModel.AddressAlreadyInUseException:IP端点0.0.0.0:13000上已有一个侦听器。 如果另一个应用程序已经在此端点上侦听,或者您的服务主机中有多个具有相同IP端点但具有不兼容的绑定configuration的服务端点,则可能会发生这种情况。 —> System.Net.Sockets.SocketException:System上的System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot,SocketAddress socketAddress)通常只允许使用每个套接字地址(协议/networking地址/端口)。 Net.Sockets.Socket.Bind(EndPoint localEP)在System.ServiceModel.Channels.SocketConnectionListener.Listen()—内部exception堆栈跟踪结束—在系统的System.ServiceModel.Channels.SocketConnectionListener.Listen()。 System.ServiceModel.Channels.ConnectionAcceptor.StartAccepting()System.ServiceModel.Channels.ExclusiveTcpTransportManager.OnOpen()上的System.ServiceModel.Channels.TransportManager.Open(TransportChannelListener channelListener)上的ServiceModel.Channels.TracingConnectionListener.Listen()。 ServiceModel.Channels.TransportManagerContainer.Open(SelectTransportManagersCallback selectTransportManagerCallback)at System.ServiceModel.Channels.TcpChannelListener`2.OnOpen(TimeSpan timeout)at System.ServiceModel.Channels.Communicat 在System.ServiceModel.ServiceHostBase.OnOpen(TimeSpan超时)在System.ServiceModel.Channels.CommunicationObject.Open(TimeSpan超时)System.ServiceModel.Dispatcher.ChannelDispatcher.OnOpen(TimeSpan超时)上的ionObject.Open(TimeSpan超时)。 ServiceModel.Channels.CommunicationObject.Open(TimeSpan超时)在Microsoft.Tools.SvcHost.ServiceHostHelper.OpenService(ServiceInfo信息)System.Net.Sockets.SocketException(0x80004005):每个套接字地址(协议/networking地址/端口)通常允许在System.Net.Sockets.Bind(EndPoint localEP)上的System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot,SocketAddress socketAddress)在System.ServiceModel.Channels.SocketConnectionListener.Listen() 你如何找出哪个进程在监听那个端口(13000)? Netstat在该端口上没有显示任何内容。 这是我的App.config: <system.web> <compilation debug="true" /> </system.web> <!– When deploying the service library project, the content of the config file must be added to the host's app.config file. System.Configuration does not support config […]

在.NET中获取用户的Exchange服务器和电子邮件地址

H I。 我想知道我的用户的Exchange服务器的地址(假设她在典型的Windows办公室networking中)。 这是在C#应用程序中。 我已经有用户的电子邮件地址,我发现它在System.DirectoryServices.AccountManagement.UserPrincipal.Current.EmailAddress ,在引用System.DirectoryServices.AccountManagement