标签:pinvoke

  • 从调试过程MainModule获取符号 - c#

    时间:2020-8-28

    我开始用C#编写调试器,以调试操作系统上的任何进程。目前,它只能处理断点(硬件,软件和内存),但现在我想显示该过程的操作码。 我的第一次尝试是使用nidsasm(NASM),但这不合适,因为启动后a.Net应用程序汇编程序指令与ndisasm不同(已通过CheatEngine测试)。 因此,我搜索了一会儿,然后从dbghelp.dll中找到了一些方法,可以调 […]

  • 不要在顺序结构中声明可见的实例字段警告 - c#

    时间:2020-8-28

    我在DllImports应用程序中使用一些wpf捕获屏幕。我在GetWindowRect中呼叫user32.dll。它要求传递一个rect结构。结构的布局很重要,因为它是本地调用。 我正在尝试VS 2019预览2,这给了我以前从未见过的警告。 rect中的所有字段都会生成相同的警告: CA1051 Do not declare visible instanc […]

  • C#Interop Delphi DLL - c#

    时间:2020-8-17

    我在Delphi“ a.dll”(没有源代码)中编写了第三方DLL。 并且此DLL具有使用此签名的一种方法。 function GetAny(pFileName: String): String; 我无法从c#进行互操作调用,因为'String type'在delphi中具有私有访问权限。 因此,在delphi中构建另一个DLL来包装该调用。 德尔福 fun […]

  • 我可以使用.NET SafeHandle类并确定性地释放其中的句柄吗? - c#

    时间:2020-8-14

    我有一个.NET项目,我在运行时根据平台的位性从资源中提取一个本机代码.DLL,其中包含我需要使用的功能。我使用LoadLibrary,GetProcAddress和FreeLibrary在托管代码中管理库的加载和使用。 在完成本机库之后,我想将其删除。这是一些伪代码,显示了当前实现的工作流程: internal class MyClass() { stri […]

  • 如何在C#中封送结构数组? - c#

    时间:2020-8-13

    我必须在C#中调用C ++ dll。 dll的头文件如下(简化):// C ++的标题 struct vector { float x; float y; vector() {} vector(float x0, float y0) { x = x0; y = y0; } }; struct unmanaged_struct { int int_var; f […]

  • dbgHelp.dll:从C#调用SymGetModuleInfo64 - c#

    时间:2020-8-7

    我从C#代码调用SymGetModuleInfo64时遇到了非常奇怪的行为。我总是通过Marshal.GetLastWin32Error()得到ERROR_INVALID_PARAMETER(87)。我已经阅读了很多有关IMAGEHLP_MODULE64结构的频繁更新的问题的帖子,并且我刚刚下载了Windows的最新调试工具(x86),从该位置加载了dbgh […]

  • 从C#进行P /调用:调用返回对象的函数 - c#

    时间:2020-8-4

    我有一个本机/非托管DLL,并且它具有一个“ CreateObject”函数,该函数返回指向业务对象的指针..因此调用将是……。喜欢: [DllImport("MyDll.dll", CharSet = CharSet.Auto)] private static extern IntPtr CreateObject(); 题:该对象公开了 […]

  • 从Delphi应用程序调用带有Seri​​alPort类的C#非托管导出dll - c#

    时间:2020-7-22

    我正在使用Robert Giesecke的非托管导出将SerialPort类的打开方法从C#类放到DLL中。现在,代码是: [DllExport] public static void OpenPort(string portName, int baudRate, int dataBits) { SerialPort serialPort = new Ser […]

  • 使用p / invoke在x64版本的.net应用程序中崩溃 - c#

    时间:2020-7-14

    因此,我试图以64位模式运行.NET应用程序。我对可以为x64编译的dll有依赖性,并且可以正确加载。我可以调用某些调用,但是当我尝试调用特定的调用时,该应用程序完全崩溃。没有错误或任何东西... 错误发生在两个位置之一;在这里: #include "socket.h" int SenderAddrSize = sizeof(SOCKAD […]

  • P从用C编译的DLL调用函数 - c#

    时间:2020-7-12

    我有以下C函数 typedef struct ekeycore_ctx_ ekeycore_ctx; typedef struct ekeycore_enum_ ekeycore_enum; typedef struct ekeycore_device_ { char *serial; char *portname; char *node; BOOL pre […]