Private Type DEVMODE
dmDeviceName As String * 32
dmSpecVersion As Integer
dmDriverVersion As Integer
dmSize As Integer
End Type Private Declare Function DeviceCapabilities Lib "winspool.drv" _
Alias "DeviceCapabilitiesA" (ByVal lpDeviceName As String, ByVal lpPort As String, _
ByVal iIndex As Long, ByVal lpOutput As String, lpDevMode As DEVMODE) As Long
请问以上代码中定义的这个DEVMODE类型,其中包含的各个变量(个数,名称,类型)是随便定义的,还是依据 Function DeviceCapabilities 的固定要求定义的,也就是说DEVMODE中的各变量的名称、个数、类型都是DeviceCapabilities的要求固定的?谢谢大家。
dmDeviceName As String * 32
dmSpecVersion As Integer
dmDriverVersion As Integer
dmSize As Integer
End Type Private Declare Function DeviceCapabilities Lib "winspool.drv" _
Alias "DeviceCapabilitiesA" (ByVal lpDeviceName As String, ByVal lpPort As String, _
ByVal iIndex As Long, ByVal lpOutput As String, lpDevMode As DEVMODE) As Long
请问以上代码中定义的这个DEVMODE类型,其中包含的各个变量(个数,名称,类型)是随便定义的,还是依据 Function DeviceCapabilities 的固定要求定义的,也就是说DEVMODE中的各变量的名称、个数、类型都是DeviceCapabilities的要求固定的?谢谢大家。
对于传递的结构,必须保证结构的总长度符合要求,结构各成员的数据类型,则可以变通使用。由于结构在内存中是连续排列的,你有时甚至可以不管成员的个数,一次性用Byte数组传递整个结构
对于传递的结构,必须保证结构的总长度符合要求,结构各成员的数据类型,则可以变通使用。由于结构在内存中是连续排列的,你有时甚至可以不管成员的个数,一次性用Byte数组传递整个结构
修改时要注意不能与系统关键字冲突就行。