|
|
发表于 2008-6-17 13:16:14
|
显示全部楼层
WINIO在VISTA下可以直接用的,不需要去重新编译3 G9 w; @. C% l' w7 F2 y
[DllImport("winio.dll")]- X1 N( V% O3 [; C5 c
public static extern bool InitializeWinIo();6 ?; r! U+ L3 s* @2 ^7 `9 Y
[DllImport("winio.dll")]$ a1 s0 c: Z$ @3 t
public static extern bool GetPortVal(IntPtr wPortAddr, out int pdwPortVal, byte bSize);3 | B P' V! u- r+ ^" E
[DllImport("winio.dll")]
7 i N( n; V" i/ P7 T' ]* U7 F public static extern bool SetPortVal(uint wPortAddr, IntPtr dwPortVal, byte bSize);0 x5 P; }$ }6 T: v) i
[DllImport("winio.dll")]0 k0 p, g% }6 f1 ?! s& E" Q6 ]
public static extern byte MapPhysToLin(byte pbPhysAddr, uint dwPhysSize, IntPtr PhysicalMemoryHandle);
5 ]. v; g5 i. t! g, ^$ ~' t# W [DllImport("winio.dll")]
7 K1 R4 d! T. k6 |/ D% y9 ?2 F public static extern bool UnmapPhysicalMemory(IntPtr PhysicalMemoryHandle, byte pbLinAddr);+ ]2 X; B% ?% q% A& R+ E
[DllImport("winio.dll")]
! i/ p+ N$ Q+ v, Y% H public static extern bool GetPhysLong(IntPtr pbPhysAddr, byte pdwPhysVal);
, D% s& y4 X9 [) h& @" f [DllImport("winio.dll")]* z1 X$ r3 p U: h5 E: V
public static extern bool SetPhysLong(IntPtr pbPhysAddr, byte dwPhysVal);" M% y, I7 d; } s( [
[DllImport("winio.dll")]
0 Z. Y2 t, D4 Z' h% Y public static extern void ShutdownWinIo(); |
|