DwmGetDxSharedSurface 错误,GetLastError 返回1
大家好:
最近我在尝试用C#做一个窗口后台截图程序, 我在user32.dll里面找到一个叫DwmGetDxSharedSurface的函数,它好像可以做到这个效果,但是当我使用它的时候它返回了一个false然后我调用GetLastError 它返回的值是1,我查了一下这个值,它的意思是函数错误,我不太明白这个到底是什么意思
这个是我的部分代码
[DllImport("user32.dll")]
public static extern bool DwmGetDxSharedSurface( IntPtr hwnd, ref IntPtr phSurface, ref long pAdapterLuid, ref ulong format, ref ulong Presentflag, ref UInt64 arg6);
IntPtr pSharedHandle = IntPtr.Zero;
var _adapterLuid = _d3dEx.GetAdapterLuid(0);
ulong formate = 0;
ulong flag = 0;
DwmGetDxSharedSurface( _captureHwnd, ref pSharedHandle, ref _adapterLuid, ref formate, ref flag, ref unknow);
//返回了false