一、介面
char *pci_lookup_name(struct pci_access *a, char *buf, intsize, int flags, ...) pci_abi;二、描述(/usr/include/pci/pci.h)
在/sys/bus/pci/devices/目錄下面可以讀取pci裝置的vendorid(從vendor檔案獲取), deviceid(從device檔案獲取),但是關於vendor的文字描述和device的文字描述卻沒有。
1) 剛開始的時候使用lspci來獲取vendor和device的文字描述,但是效率比較低;
2) 現在使用pci_lookup_name()介面來獲取vendor和device的文字描述;
pacc->id_lookup_mode = 0;
預設安裝的pci開發庫,必須要在呼叫pci_lookup_name()之前,初始化為0。否則當/usr/share/hwdata/pci.ids檔案不存在,或則在pci.ids檔案中找不到vendor id(device id)對應的描述時,pci_lookup_name()會segment fault。
三、示例輸出struct pci_access *pacc;
pacc = pci_alloc();
pacc->id_lookup_mode = 0;
if( !pci_lookup_name( pacc, name, 256,
pci_lookup_vendor,
vendor,device ) )
printf( "vendor: %s\n", name);
if( !pci_lookup_name( pacc, name, 256,
pci_lookup_device,
vendor,device ) )
printf( "device: %s\n", name);
pci_cleanup(pacc );
四、示例**
五、注
1)編譯時,加上-lpci;2)g++編譯時,引入標頭檔案時,
不然即使編譯通過,在執行時呼叫pci.h裡面的介面時,會報undefine symbol的錯誤#ifdef __cplusplus
extern "c"
#endif
Wince獲取Wifi的裝置名 連線狀態和訊號強度
ote 需ce4.0或更高版本 相容ndis5.1 支援 一 加入標頭檔案 include include include二 attach to ndisuiohandle hndis createfile ndisuio device name,generic all,0,null,open ex...
Wince獲取Wifi的裝置名 連線狀態和訊號強度
需ce4.0或更高版本 相容ndis5.1 支援 一 加入標頭檔案 include include include二 attach to ndisuiohandle hndis createfile ndisuio device name,generic all,0,null,open existi...
Wince獲取Wifi的裝置名 連線狀態和訊號強度
一 加入標頭檔案 include include include二 attach to ndisuiohandle hndis createfile ndisuio device name,generic all,0,null,open existing,handle invalid handle ...