【发布时间】:2014-01-13 19:41:13
【问题描述】:
就这么简单,运行这条指令:
NativeMethods.SystemParametersInfo(SPI.SPI_SETKEYBOARDCUES,
0UI,
True,
SPIF.None)
我需要这个签名:
<DllImport("user32.dll")>
Private Shared Sub SystemParametersInfo(
ByVal uiAction As NativeMethods.SPI,
ByVal uiParam As UInteger,
ByVal pvParam As Boolean,
ByVal fWinIni As NativeMethods.SPIF)
End Sub
但是要运行这条其他指令:
Dim MyBoolean As Boolean = False
NativeMethods.SystemParametersInfo(SPI.SPI_GETKEYBOARDCUES,
0UI,
MyBoolean,
SPIF.None)
...当然我需要通过引用布尔参数来检索值:
<DllImport("user32.dll")>
Private Shared Sub SystemParametersInfo(
ByVal uiAction As NativeMethods.SPI,
ByVal uiParam As UInteger,
ByRef pvParam As Boolean,
ByVal fWinIni As NativeMethods.SPIF)
End Sub
那么我需要如何管理这些签名?我不能只选择一个。
有一种方法可以将两个签名都保留为布尔值而不将其中一个更改为整数?
是的,第一条指令不适用于 ByRef 参数,那么我该如何解决这个问题?
【问题讨论】:
标签: .net vb.net winapi pass-by-reference signature