【c# – WinAPI / WPF:仅为应用程序设置系统光标】教程文章相关的互联网学习教程文章

c# – 检测应用程序焦点更改/挂钩以进行HWND更改?

我怎么能检测到任何应用程序失去焦点?是否有任何系统挂钩可供使用?我想在新的应用程序处于焦点或丢失的时候接收.即使拥有用户的“当前”HWND也会很好. 我正在使用C#,但是,我确信它的所有赢得api的东西……所以任何信息都会很棒.解决方法:使用SetWindowsHookEx设置WH_CALLWNDPROC或WH_CALLWNDPROCRET全局钩子,并查找WM_SETFOCUS和/或WM_KILLFOCUS消息.

c# – MonoState,Singleton或Derived Forms:CRUD应用程序的最佳方法?【代码】

我有一个相当大的CRUD WinForm应用程序,有很多对象.人员,注册,计划,案例注释等.有超过30个表单构成了应用程序,UI在逻辑上被细分.会员,报名,计划,CaseNotes等 我试图弄清楚如何在搜索表单上搜索并将对象传递给下一个请求的表单后创建我的Person对象.不管是什么,让我们说人口统计学.缺点是我需要Person对象在整个App中可用,并且只能有一个. 现在我有ZERO接触设计模式,但我正在尝试.我已阅读http://www.switchonthecode.com/tutorials...

从C#开始,打开一个任意应用程序【代码】

相关问题[stackoverflow] here. 我正在努力做到这一点,但我想更进一步.我想使用文件类型的默认编辑器打开任意文件.从那时起,我希望允许我的用户像平常那样与文件进行交互,或者继续在我的应用程序中工作.扩展名是用户完成编辑后发生的事情.有没有办法可以从外部应用程序捕获一个close(和理想的保存)事件,并将其用作触发器来执行其他操作?就我的目的而言,跟踪外部应用程序的关闭就行了. 我可以在具体情况下这样做.例如,我可以从我的...

c# – 如果两个应用程序使用不同的端点地址,它们是否可以共享相同的WCF NetTcpBinding端口?【代码】

我有一个客户端和服务器方案,其中客户端上安装了服务,服务器上安装了另一个服务.当这些安装在不同的机器上时,我没有任何问题.但是,我还希望能够在同一台机器上安装客户端服务和服务器服务.我可以将它们设置为使用不同的端口,但是我想使用单个端口来完成此操作. 我启用并启动了Net.Tcp端口共享服务Windows服务.我首先启动Server服务.当我尝试启动客户端服务时,执行serviceHost.Open()时会出现以下异常: TransportManager无法使用Ne...

c# – 在生产应用程序中使用ASP.NET MVC 2 Preview 1是否可行?

我不确定在生产系统中使用ASP.NET MVC 2 Preview 1是否可行?我想,因为它引入了一些在MVC 1中很奇怪的急需的功能. 不幸的是,我从7月31日的ScottGu发布帖中找不到关于该主题或路线图信息的任何信息. MVC2P1已经和MVC一样了(我不知道MVC团队认为预览是什么)?有没有人有更好的信息? 感谢您的意见,谢谢!解决方法:基于MVC第1版,在最终版本发布之前有很多预览.最初的ASP.NET MVC 1 Preview 1与最终版本有很大不同.最终的MVC 1预览版5与...

c# – 更改我的应用程序的默认文化信息

除非您更改,否则每个线程都会继承默认的Windows文化通过提供的服务访问当前线程System.Threading命名空间. 您知道是否可以更改默认的应用程序文化信息而不是使用其父文化信息设置eac新线程. 谢谢!罗南解决方法:不幸的是,新线程的默认文化没有应用程序范围的设置.线程的默认区域性由Windows在创建时设置.

c# – GetFontData在ASP.NET App中返回-1(GDI_ERROR)但在控制台应用程序中不返回.什么可能导致这个?【代码】

我们在其中一个Web应用程序中使用PDFSharp(GDI构建).在一个PDF导出器中,我们使用非系统truetype字体,它在我们的开发环境中就像一个魅力,但是当我们在生产中运行它时会崩溃. 我们的开发和生产之间的关键区别(我认为)是我们的生产服务器在Windows Server 2008 64bit上运行,而我们的开发运行在2008 32bit.我写了一个很小的测试程序来调试.try {new XFont("ocrb10", 10, XFontStyle.Regular, new XPdfFontOptions(PdfFontEncoding.Unic...

c# – 在控制台应用程序中同步来自不同线程的事件【代码】

我感觉自己像一个总的菜鸟问这个,但无论如何,它在这里: 我想知道从不同线程同步事件的最简单方法是什么. 一些示例代码:class Program {static void Main(string[] args){Console.WriteLine("# started on:" + Thread.CurrentThread.ManagedThreadId);tt t = new tt();t.First += new EventHandler(t_First);t.Second += new EventHandler(t_Second);Task task = new Task(new Action(t.Test));task.Start();while (true){Console...

引用C#中另一个应用程序提供的外部.NET DLL

我有一个C#项目,它引用了另一个应用程序附带的DLL(称为外部DLL).当我构建我的项目时,由于引用,外部DLL会自动添加到我的项目输出中.当我运行我的项目时,它从我的项目文件夹加载外部DLL. 外部DLL所属的另一个应用程序是由另一个团队开发的,并且DLL会定期更新.我不想用我的项目打包他们的DLL.相反,我想让我的项目在执行时加载他们的DLL – 而不是从我项目的文件夹中选择DLL副本. 现在我知道通过反思这是可能的.我知道我可以做一个“A...

c# – Clickonce应用程序和文件处理程序行为【代码】

我有一个clickonce应用程序,我为这个应用程序设置了几个文件处理程序(为了这个例子,我想处理扩展名为.aaa或.bbb的文件). 如果我选择一个带有这些扩展名的文件,我的应用程序会按预期启动,一切都很好.但是,如果我选择多个文件并打开它们(通过按Enter键或右键单击并选择“打开”),则会启动我的aopplication的多个实例 – 每个文件被选中一个实例. 这不是我期望的行为,我只希望一个实例以AppDomain.CurrentDomain.SetupInformation.Act...

无法在C#控制台应用程序中捕获Ctrl C.【代码】

我有以下代码,我试图用来在控制台应用程序中捕获Ctrl C:/// <summary>/// A driver program for testing /// </summary>/// <param name="args">Arguments to the program</param>static void Main(string[] args){var program = new Program();Console.Clear();Console.TreatControlCAsInput = false;Console.CancelKeyPress += program.OnCancelKeyPress;program.Run(args.FirstOrDefault() ?? "3.26.200.125");Console.WriteLi...

在C#.net应用程序中发送短信和ussd

什么是用于在C#.net应用程序中使用sms和ussd服务的好库?解决方法:我目前正在使用这个http://www.smsco.it/tomcat/en/sms_tutorials/sms_from_c_sharp.jsp短信,它工作正常!

c# – 如何重构测试应用程序?【代码】

我有一个测试应用程序,有一个类TestSeq和一个方法Go(),它包含这样的块:_writer.WriteLine("Doing foo action...");var stopwatch = Stopwatch.StartNew();// foo - some work herestopwatch.Stop();_writer.WriteDone("Results of foo action.", stopwatch.Elapsed);在“一些工作”中,我对WCF客户端有不同的调用(CRUD操作,过滤器等). 所以,很多代码都在重复,显然有些重构应该在这里完成.我想创建一个类TestAction,但我不知道什么是...

从C#应用程序将命令行参数传递给IronPython?【代码】

如何将命令行参数从我的C#应用??程序传递到IronPython 2.x? Google仅返回有关如何使用Iron Python 1.x执行此操作的结果.static void Main(string[] args) {ScriptRuntime scriptRuntime = IronPython.Hosting.Python.CreateRuntime();// Pass in script file to execute but how to pass in other arguments in args?ScriptScope scope = scriptRuntime.ExecuteFile(args[0]); }解决方法:您可以通过以下C#代码设置sys.argv:stati...

使用Environment.Is64BitProcess从c#应用程序动态调用32位或64位DLL【代码】

我正在开发一个用C#编写的.NET 4.0项目(通过Visual Studio 2010).有一个第三方工具需要使用C/C++ DLL,并且在C#中有32位应用程序和64位应用程序的示例. 问题是32位演示静态链接到32位DLL,64位演示静态链接到64位DLL.作为.NET应用程序,它可以在客户端PC上作为32位或64位进程运行. .NET 4.0框架提供了Environment.Is64BitProcess属性,如果应用程序作为64位进程运行,则返回true. 我想要做的是在检查Is64BitProcess属性后动态加载正确的...