草庐IT

DLL_THREAD_ATTACH

全部标签

c# - 什么时候使用 C# 类库 (.dll) 合适?

我是一名从未真正使用过.dll文件的程序员。当然,当我需要第3方软件时,例如图形库、帮助我创建图形的库等。我会将引用/ddl文件添加到我的程序中并在我的代码中使用它们。此外,您似乎可以将.dll用于很多不同的事情,所以我希望这个主题集中在C#上。现在我正在开发一个清理库(?)(我认为这是正确的术语),它将充满相关的方法,可以以各种不同的方式清理变量。我想知道的是:有什么好处:1)将方法写入类库->编译/构建它->添加库作为对程序的引用-这需要清理一些变量?或者如果我在哪里,它会完全一样吗:2)在程序中新建一个SanitizeClass->添加所有sanitize方法->在程序中需要清理

c# - 如何使用 PowerShell 使用 C# DLL 中存在的类的新对象

我有一个C#类,例如publicclassMyComputer:PSObject{publicstringUserName{get{returnuserName;}set{userName=value;}}privatestringuserName;publicstringDeviceName{get{returndeviceName;}set{deviceName=value;}}publicstringdeviceName;}派生自PSObject。我正在使用导入模块在powershell中加载具有此代码的DLL。然后我尝试在PowerShell中创建MyComputer类的新对象

c# - 中止对非托管 DLL 的调用

我有一个非托管DLL,如果输入参数是一个大值,它可以运行很长时间的函数,有时这是可取的,但并非总是如此。我如何在C#中调用此函数以便在需要时可以中止它?到目前为止,我已经尝试将调用放在一个单独的线程中,但中断和中止似乎都无法停止该进程,该进程以100%CPU运行,直到dll完成。是否可以终止正在运行的dll代码? 最佳答案 非托管代码只有在处于“可警告等待状态”时才可中止。当它消耗100%的CPU周期时不会。P/InvokingTerminateThread会起作用,前提是您可以获得线程句柄,而这在.NET中变得非常困难。无论如何它

c# - 在 Xamarin.Forms 中使用 Thread.Sleep

我要执行以下操作MainPage=newContentPage{Content=newStackLayout{Children={newButton{Text="Thread.Sleep",Command=newCommand(()=>{Thread.Sleep(1000);MainPage.Animate("",x=>MainPage.BackgroundColor=Color.FromRgb(x,x,x));}),},newButton{Text="Task.Run+Thread.Sleep",Command=newCommand(async()=>{awaitTask.Run((

c# - 查看c#中的dll注释

我写了我的函数的c#注释,然后我把dll文件给了我需要的friend,但是当他使用那些函数时,他看不到注释,如何解决这个问题?ps:我在项目中使用的时候可以看到评论; 最佳答案 评论被剥夺了程序集,你必须generatethexmldocumentation为您的项目并将其交给您的friend。如果两个文件(程序集和xml文档)位于同一目录中,VisualStudio将使用IntelliSense中的文档。(Xml文档can'tbeembeddedinassembly) 关于c#-查看c

c# - 我可以通过 gacutil 安装,但不能卸载相同的 dll

我已经使用gacutil安装了一个DLL。gacutil.exe/iSI.ArchiveService.CommonLogic.Exceptions.dll使用gacutil/l显示确实安装了。SI.ArchiveService.CommonLogic.Exceptions,Version=1.0.0.0,Culture=neutral,PublicKeyToken=925c8734ae397609,processorArchitecture=MSIL然后我想卸载它。gacutil.exe/uSI.ArchiveService.CommonLogic.Exceptions.dllMic

c# - System.Threading.Thread继承

是否可以继承Thread类并重写Start方法? 最佳答案 关于为什么有人要这样做:许多语言(例如Java)和/或线程API(例如Qt)允许开发人员通过从“线程”基类继承,然后重载一个方法来实现线程实现线程例程。在Qt中广泛使用了这个模型后,我实际上发现它非常方便——不是让线程以某些函数或方法为目标,这通常会导致奇怪和/或令人费解的代码,而是将整个线程包含在一个对象中。这是使用QtAPI的示例代码:classMyThread:publicQThread{Q_OBJECTprotected:voidrun();};voidMyThre

c# - EF5 ObjectContext : How to replace IQueryable<T>. 包含(路径)与 context.T.Attach()

我在相对较大且复杂的数据模型上使用EntityFramework5和ObjectContext。我想解决将多个IQueryable.Include(Path)链接到急切加载相关对象时生成的大查询。例如,我正在做这样的事情:varqueryPe=context.Person.Where(p=>p.Id==110).Include(@"AA");queryPe=queryPe.Include(@"BB.CC.DD");queryPe=queryPe.Include(@"EE.FF");它可以通过使用字符串数组并在运行时在foreach循环中链接每个图来使其通用。相反,我想做这样的事情:Pe

c# - 如何在 C# 中编写 SNMP 代理或 SNMP 扩展代理 DLL

我需要为我的应用程序编写一个SNMP代理。我读了CodeProjectarticle关于如何使用win32编写SNMP扩展代理DLL,但想知道是否可以使用托管代码来完成。此外,是否可以在托管代码中编写我自己的SNMP代理并在WindowsSNMP服务上运行它?需要在我的服务器上运行windowsSNMP服务以提供基本的操作系统管理信息。您会推荐什么C#SNMP库?我找到了一些C#SNMP协议(protocol)实现,但找不到有关如何实现SNMP代理的示例代码-大多数示例仅与查询其他代理或发送陷阱有关。 最佳答案 如果您想使用.Net

c# - 是否可以将 DLL 从进程内存导出/转储到文件?

首先我知道1.IsitpossibletoexportadlldefinitionfrommyAppDomain?2.Isitpossibletosaveadynamicassemblytodisk?3.HowcanIextractDLLfilefrommemorydump?但这些似乎都没有特别回答我的问题。考虑以下场景:C#应用程序从内存流加载DLL(因此DLL不会直接暴露给用户)。是否有一种工具可以明确允许将该特定DLL以其原始形式从内存转储或导出到磁盘?注意:我希望有人向我展示从C#应用程序的内存转储中提取完整DLL的完整分步过程。 最佳答案