|
发表于 2008-6-17 13:16:14
|
显示全部楼层
WINIO在VISTA下可以直接用的,不需要去重新编译& v K, M# u3 Q) H j5 G! z* j
[DllImport("winio.dll")]
+ ] x( f" R2 V8 U. N, W9 R public static extern bool InitializeWinIo(); y+ ~$ u8 y i/ y) p j' v
[DllImport("winio.dll")]
2 S4 C2 N; h! ] w/ ` public static extern bool GetPortVal(IntPtr wPortAddr, out int pdwPortVal, byte bSize);
1 t! b6 _2 H0 L [DllImport("winio.dll")]' L) W. l6 J8 {) t$ `
public static extern bool SetPortVal(uint wPortAddr, IntPtr dwPortVal, byte bSize);
" w8 G: X3 j/ ~ [DllImport("winio.dll")]/ F* Z% g3 R: q7 u' n
public static extern byte MapPhysToLin(byte pbPhysAddr, uint dwPhysSize, IntPtr PhysicalMemoryHandle);( D7 K( F) \! ?2 U" n3 K/ s, P
[DllImport("winio.dll")]- J: ]: d2 w! m/ A/ e0 |$ G
public static extern bool UnmapPhysicalMemory(IntPtr PhysicalMemoryHandle, byte pbLinAddr);
" [4 [" f G, E! K+ I6 o [DllImport("winio.dll")]& C; G5 Z1 y0 h& s
public static extern bool GetPhysLong(IntPtr pbPhysAddr, byte pdwPhysVal);
& y1 {! T' \+ \$ `* H; t% s' J$ a [DllImport("winio.dll")]
5 g" X. t/ A6 m1 i/ |' T( n* y public static extern bool SetPhysLong(IntPtr pbPhysAddr, byte dwPhysVal);5 K: C, f& F9 }* w& N9 y; m
[DllImport("winio.dll")]! A$ A" U1 g7 F/ I9 k. [( y: H
public static extern void ShutdownWinIo(); |
|