|
|
发表于 2008-6-17 13:16:14
|
显示全部楼层
WINIO在VISTA下可以直接用的,不需要去重新编译: g; R1 k( }8 F5 Q
[DllImport("winio.dll")]: @ J8 B5 k1 k u5 K6 i2 H+ T7 G
public static extern bool InitializeWinIo();
( K5 u! @3 u- B. s w5 Z [DllImport("winio.dll")]& W) f$ ^! ?3 S3 c Y# d# s
public static extern bool GetPortVal(IntPtr wPortAddr, out int pdwPortVal, byte bSize);
: E; Z5 F0 R: `/ G" t2 r( q& O A [DllImport("winio.dll")]1 G) I- O0 d$ s& C
public static extern bool SetPortVal(uint wPortAddr, IntPtr dwPortVal, byte bSize);3 g* b& M, Q4 ]
[DllImport("winio.dll")]
8 A F& Q' s1 J) ` public static extern byte MapPhysToLin(byte pbPhysAddr, uint dwPhysSize, IntPtr PhysicalMemoryHandle);" z; l7 k, `1 O6 t6 T
[DllImport("winio.dll")]& D+ G' y% B( p) r1 J: h
public static extern bool UnmapPhysicalMemory(IntPtr PhysicalMemoryHandle, byte pbLinAddr);
4 h8 V% J4 y$ h7 W [DllImport("winio.dll")], J$ Q2 @+ o, Y3 O6 z
public static extern bool GetPhysLong(IntPtr pbPhysAddr, byte pdwPhysVal);! Y- M L* s5 q ]. M3 t$ h1 ?
[DllImport("winio.dll")]
V! i' Z# y, ~& C2 I8 r: g public static extern bool SetPhysLong(IntPtr pbPhysAddr, byte dwPhysVal);
3 T: T5 z* m1 ~* i [DllImport("winio.dll")]: o$ `- N2 r! y5 Q/ G
public static extern void ShutdownWinIo(); |
|