草庐IT

cta-user-create-app

全部标签

c# - 来自 user32.dll 的 FindWindowEx 使用 dllimport 返回零句柄和 127 错误代码

我需要以编程方式处理另一个Windows应用程序,搜索谷歌我找到了一个示例,它使用DLLImport属性处理Windows计算器并将user32.dll函数导入C#中的托管函数。应用程序正在运行,我正在获取主窗口的句柄,即计算器本身,但之后的代码无法正常工作。FindWindowEx方法不返回计算器子项的句柄,例如按钮和文本框。我尝试在DLLImport上使用SetLastError=True并发现我收到错误代码127,即“未找到过程”。这是我从中获得示例应用程序的链接:http://www.codeproject.com/script/Articles/ArticleVersion.

c# - 我的 .NET 应用程序何时/如何使用其 App.Config 文件?

我以前从没想过;但我最近了解到如何修改app.config文件以添加/删除跟踪监听器(例如,将所有Trace.WriteLine输出重定向到文本文件)。但是我不太明白它是如何工作的?有人可以解释一下吗?我知道相应的C#代码与配置(在此示例中)执行相同的操作-该代码是否在我的应用程序入口点之前生成/执行? 最佳答案 doesthatcodegetgenerated/executedbeforemyapplication'sentrypoint?将配置文件视为标准文本文件。如果您的应用程序代码不读取它也不对其进行任何操作,则什么也不会发

c# - 如何以编程方式修改 app.config 中的 assemblyBinding?

我试图通过使用XmlDocument类并直接修改值来在安装时更改bindingRedirect元素。这是我的app.config的样子:......然后我尝试使用以下代码将1.0更改为2.0privatevoidSetRuntimeBinding(stringpath,stringvalue){XmlDocumentxml=newXmlDocument();xml.Load(Path.Combine(path,"MyApp.exe.config"));XmlNoderoot=xml.DocumentElement;if(root==null){return;}XmlNodenode=r

c# - 如何在 ASP.NET 中使用 User.Identity.Name 作为 SqlDataSource 的参数?

对于SqlDataSource,我可以为传入的参数配置外部源。例如,它可能是QueryString、Session、Profile等。但是我没有使用用户作为来源的选项。我知道我可以为插入、选择、更新、删除事件中的参数提供值。但我不认为这是一个优雅的解决方案,因为我已经在aspx文件中定义了一些参数。我不想在两个不同的地方定义参数。弄得一团糟。那么我能否以某种方式在.aspx文件中定义此参数?//User.Identity.Namegoeshereasavalueforanotherparameter 最佳答案 在您的.aspx中声明

c# - 获取 C# WinForms App 的应用程序图标

我使用“项目属性”选项卡为C#WinForms应用分配了一个图标。此图标在构建时随程序list一起提供。有没有办法在运行时获取此图标的System.Drawing.Icon对象,而无需再次将其嵌入到资源中?我已完成研究;有办法extractaniconoutofanEXE,但我找不到从应用程序中从正在运行的C#应用程序中提取图标的任何东西。 最佳答案 您看到链接中的第二个答案了吗?(HowcanIgettheiconfromtheexecutablefileonlyhavinganinstanceofit'sProcessinC#)

C# 读取注册表 : ProductID returns null in x86 targeted app. "Any CPU"工作正常

我最近搬到了一台装有VS2010的W764位机器上。我的项目设置为在AnyCPU上运行。当我将其更改为针对x86时,我注意到我的某些注册表调用不再有效。我正在尝试像这样读取ProductID字段:RegistryKeywindowsNTKey=Registry.LocalMachine.OpenSubKey(@"Software\Microsoft\WindowsNT\CurrentVersion");objectproductID=windowsNTKey.GetValue("ProductId");productID在x86模式下运行时始终为null,在“任何CPU”下运行时它可以

c# - 定向鼠标事件 [DllImport ("user32.dll")] 单击,双击

我试过了[DllImport("user32.dll")]staticexternboolSetCursorPos(intX,intY);并且将光标移动到所需点时效果很好。我以前从未尝试过这种DLL导入,但它有效:)。但是我想要更多我还能提取什么?主要是我想在没有任何鼠标输入的情况下双击、单击或使用滚轮选项,只是代码我该怎么做?以及如何检查user32dll中还包含什么?谢谢 最佳答案 [DllImport("user32.dll",CharSet=CharSet.Auto,CallingConvention=CallingConv

c# - 简易喷油器 : Factory classes that need to create classes with dependencies

我有一个工厂类,它创建了几个不同类型的类。工厂在容器中注册。鉴于它们也具有依赖性,在工厂内部创建类的推荐方法是什么。我显然想避免对容器的依赖,但如果我新建这些类,那么它们将不会使用容器。例如publicclassMyFactory{publicIMyWorkerCreateInstance(WorkerTypeworkerType){if(workerType==WorkerType.A)returnnewWorkerA(dependency1,dependency2);returnnewWorkerB(dependency1);}}所以问题是我从哪里获得这些依赖项。一种选择是使它们成

c# - 如何在 .NET Core 2.1 中使用 String.Create 的示例

有谁知道这个方法是如何使用的?文档有点“轻”!publicstaticstringCreate(intlength,TStatestate,System.Buffers.SpanActionaction);https://learn.microsoft.com/en-us/dotnet/api/system.string.create?view=netcore-2.2 最佳答案 String.Create()method需要三样东西:决赛length的字符串。您必须事先知道这一点,因为该方法需要它安全为Span创建一个内部固定长度缓

c# - 事件目录 : Retrieve User information

我有一个Web应用程序正在使用我们的ActiveDirectory针对Windows身份验证运行。我有一个新要求,需要从ActiveDirectory条目中提取一些个人信息。访问此信息的最简单方法是什么? 最佳答案 直接通过DirectoryEntry访问用户似乎是最直接的方法。以下是我从我的第一个AD相关项目中学到的一些与AD相关的花絮:在URI中,以小写形式写入LDAP。否则你会得到一个神秘的错误。我在这个令人沮丧的问题上花了一天多的时间......要清除单值属性,请将其设置为空字符串,而不是null。Null会导致异常。要清除