【发布时间】:2009-09-15 13:32:14
【问题描述】:
我正在尝试在 Windows 7 上PInvoke UpdateProcThreadAttribute(),但我的尝试一直返回 FALSE,最后一个 Win32 错误为 50。
Function declaration (from MSDN)
BOOL WINAPI UpdateProcThreadAttribute(
__inout LPPROC_THREAD_ATTRIBUTE_LIST lpAttributeList,
__in DWORD dwFlags,
__in DWORD_PTR Attribute,
__in PVOID lpValue,
__in SIZE_T cbSize,
__out_opt PVOID lpPreviousValue,
__in_opt PSIZE_T lpReturnSize
);
这是我对 PInvoke 签名的尝试:
[DllImport("kernel32.dll", CallingConvention = CallingConvention.Winapi, SetLastError = true)]
public static extern bool UpdateProcThreadAttribute
(
IntPtr lpAttributeList,
UInt32 dwFlags,
ref UInt32 Attribute,
ref IntPtr lpValue,
ref IntPtr cbSize,
IntPtr lpPreviousValue,
IntPtr lpReturnSize
);
这个声明合理吗?谢谢。
【问题讨论】:
-
这类问题总是值得检查pinvoke.net。