pinvoke

    0热度

    2回答

    我遇到了kernal32 Pinvoke函数的问题,因为它们会一直抛出INVALID_FILE_HANDLE。该程序读取当前硬盘的第一个扇区。我看不到以下代码有什么问题。 class Program { const uint GENERIC_READ = 0x80000000; const uint FILE_SHARE_READ = 0x00000001;

    3热度

    1回答

    上EnumWindows的的documentation强调: 注意对于Windows 8及更高版本,EnumWindows的列举只有桌面应用程序的顶层窗口。 是什么和“非桌面应用程序”之间“桌面应用程序”的区别? 这与地铁应用程序? 我问,因为EnumWindows在Win10中的表现与Win7相比有所不同。

    -1热度

    2回答

    我有一个进程监视用户当前正在工作的窗口(GetForegroundWindow)。要获得HWND的进程ID,我使用GetWindowThreadProcessId。但是,如果前台应用程序被挂起,我会得到Desktop Window Manager - dwm.exe的进程ID。我可以确定是由IsHungAppWindow挂起的应用程序。 但如何获得前台挂起应用程序的真实进程ID?

    0热度

    1回答

    我试图为P调用函数/从C++/Win32的DLL调用一个函数,但每当我把它叫做我得到以下错误: System.AccessViolationException occurred HResult=-2147467261 Message=Attempted to read or write protected memory. This is often an indication

    2热度

    1回答

    我收到一个错误“回调是使用此代码对垃圾收集的代理类型进行的”,但我似乎找不到解决方案。 <DllImport("winmm.dll")> Private Shared Function timeSetEvent(delay As Integer, resolution As Integer, handler As TimerEventHandler, user As IntPtr, eventT

    -2热度

    1回答

    我正在构建一个使用C#GUI和本机C++逻辑dll的光谱测量应用程序。我试图让dll填充一个由C#端引用传递的简单C++结构体的数组。但是,当我尝试打印[应该被填充]数组元素时,我得到System.NullReferenceExceptions并且数组元素在内存中被标记为空。 这里是C++结构定义和方法实现: typedef struct intensitytype { unsigned

    0热度

    1回答

    我有LZ4 C实现的一个dll,我想打电话从C#代码 LZ4_compress_default(const char* source,char* dest,int sourceLength,int maxdestLength); 功能。该函数将源数组压缩到dest数组中。这个怎么做? 我的C#代码: DllImport(@"CXX.dll", CharSet = CharSet.Ansi, S

    6热度

    2回答

    在Linux上的.NET核心中是否有办法实现P/Invoke (dllimport)? 例如: 我有用.net框架编译的C++ MyLib.dll。 如果可以这样使用,或者不支持使用.net-core与linux调用本机win api? [DllImport("MyLib.dll", CallingConvention = CallingConvention.StdCall)] internal

    0热度

    1回答

    的值,所以我有这个C++函数的DLL __declspec(dllexport) MOUSERAWDATA __stdcall GetMouseRawData(LPARAM lParam) { UINT bufferSize = 0; BYTE *buffer = new BYTE[bufferSize]; GetRawInputData((HRAWINPUT)lP

    0热度

    1回答

    我已经建立了一个简单的自定义,PAM模块和模块按预期工作与pamtester并与其他PAM测试代码我在网上找到。 我还建造它使用的PInvoke反对PAM验证一个简单的dotnet核心应用。 如所提到的,自定义的模块的工作原理与pamtester和自定义应用程序DOTNET作品(最多接收CONV回调的点)针对默认的ubuntu 15.10 PAM设置。 但是,如果我勾自定义应用程序到自定义的PAM