|
|
发表于 2008-6-17 13:16:14
|
显示全部楼层
WINIO在VISTA下可以直接用的,不需要去重新编译" C, H2 |2 y- q2 I
[DllImport("winio.dll")]
" p' [& }: w( N; |0 q" L8 U7 L: z; W; g& ] public static extern bool InitializeWinIo();
, G# _& {! b7 C0 N8 ~% M' w z [DllImport("winio.dll")]0 Z9 z$ k* `& n% z* f8 O
public static extern bool GetPortVal(IntPtr wPortAddr, out int pdwPortVal, byte bSize);1 j% i+ }( X# m
[DllImport("winio.dll")]
) o% z. K' y2 ] public static extern bool SetPortVal(uint wPortAddr, IntPtr dwPortVal, byte bSize);+ t' K: Y2 J% s7 f" A
[DllImport("winio.dll")]
3 e! `) }# \, [! C. w public static extern byte MapPhysToLin(byte pbPhysAddr, uint dwPhysSize, IntPtr PhysicalMemoryHandle);0 G! a2 `" x! w' _+ j
[DllImport("winio.dll")]
, K: g) }# L# ~1 o3 q public static extern bool UnmapPhysicalMemory(IntPtr PhysicalMemoryHandle, byte pbLinAddr);! s. P. D* k1 l, N
[DllImport("winio.dll")]
# I4 s* \) I5 ]# ? public static extern bool GetPhysLong(IntPtr pbPhysAddr, byte pdwPhysVal);
3 B X1 A) h- B8 n* f [DllImport("winio.dll")]( x# [& a3 T$ @" C* ?0 ]- Q
public static extern bool SetPhysLong(IntPtr pbPhysAddr, byte dwPhysVal);! d0 X: A. }% Q7 s+ C/ p2 k& Q
[DllImport("winio.dll")]- {. d; L. Q2 T; S m
public static extern void ShutdownWinIo(); |
|