欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

WinIO初始化失敗原因是什么

本篇內(nèi)容主要講解“WinIO初始化失敗原因是什么”,感興趣的朋友不妨來(lái)看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來(lái)帶大家學(xué)習(xí)“WinIO初始化失敗原因是什么”吧!

創(chuàng)新互聯(lián)是一家專(zhuān)注于網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),金華網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:金華等地區(qū)。金華做網(wǎng)站價(jià)格咨詢:18982081108

WinIO是一個(gè)能夠打開(kāi)一些操作系統(tǒng)IO特權(quán)操作的一個(gè)庫(kù),簡(jiǎn)單的來(lái)說(shuō)它加載了一些驅(qū)動(dòng)。通過(guò)加載的驅(qū)動(dòng)可以直接的訪問(wèn)端口。在工控上,我們可以利用這個(gè)庫(kù)直接操作IO卡的地址。例如我最近在做的一個(gè)數(shù)控鉆銑床的IO卡和運(yùn)動(dòng)控制卡就是很老的一個(gè)卡,在WIN98下面工作很正常,但是在NT核心上就會(huì)出現(xiàn)非法指令調(diào)用的問(wèn)題。這些非法指令來(lái)自于底層對(duì)IO卡和運(yùn)動(dòng)控制卡的直接地址訪問(wèn)。在98時(shí)代,這些操作都沒(méi)有受到保護(hù)的,在NT核心下就會(huì)出現(xiàn)保護(hù)問(wèn)題。經(jīng)試驗(yàn),經(jīng)過(guò)WinIO初始化載入驅(qū)動(dòng)以后再進(jìn)行IO卡直接訪問(wèn),很成功。

但應(yīng)用的時(shí)候,就出現(xiàn)了一些莫名其妙的問(wèn)題。應(yīng)用WinIO只需要調(diào)用兩個(gè)函數(shù)InitializeWinIo(),和最后的ShutdownWinIo()即可。InitializeWinIo()將會(huì)返回一個(gè)bool值指示初始化結(jié)果。就是這個(gè)函數(shù)造成了許多困擾。

第一次困擾是在一次調(diào)試中,經(jīng)常初始化失敗,一旦成功以后就總是成功的。剛開(kāi)始以為是InitializeWinIo()以后沒(méi)有ShutdownWinIoI()造成的,后來(lái)看了WinIO的C Example證明只寫(xiě)InitializeWinIo()一樣能夠進(jìn)程一旦結(jié)束,由InitializeWinIo初始化的資源自然就結(jié)束了。所以不存在上次運(yùn)行影響這次運(yùn)行的事情。后來(lái)突然發(fā)現(xiàn),WinIO相關(guān)的dll,vxd,sys竟然是綠色的。綠色在WindowsXP系統(tǒng)里面代表了文件是被EFS加密的。我為了工程的保密,把所有的工程目錄都進(jìn)行了EFS加密。EFS加密會(huì)影響磁盤(pán)性能,原因就在于其加解密過(guò)程。但是這里很奇怪,可能是間歇性的EFS解密速度沒(méi)有跟上WinIO中加載驅(qū)動(dòng)的速度,造成讀取的sys和vxd設(shè)備驅(qū)動(dòng)是混亂的,最終導(dǎo)致加載失敗。將EFS加密取消,問(wèn)題解決。

第二次困找在我用C#寫(xiě)了一個(gè)dllimport,然后進(jìn)行調(diào)用,結(jié)果,總是返回false。很疑惑,WinIO相關(guān)的文件都放到一起的,怎么還是這樣的呢?VS2005單元測(cè)試?yán)镆矔?huì)失敗。究其原因還是路徑的問(wèn)題造成。分析WinIO的源代碼,可以發(fā)現(xiàn)InitializeWinIo()會(huì)調(diào)用一個(gè)GetDriverPath這個(gè)函數(shù):

bool GetDriverPath()
{
PSTR pszSlash;

if (!GetModuleFileName(GetModuleHandle(NULL), szWinIoDriverPath, sizeof(szWinIoDriverPath)))
return false;

pszSlash = strrchr(szWinIoDriverPath, '\');

if (pszSlash)
pszSlash[1] = 0;
else
return false;

strcat(szWinIoDriverPath, "winio.sys");

return true;
}

這里面已經(jīng)很清楚的知道了什么情況下會(huì)false了。注意winio.sys存放的位置問(wèn)題就能使之初始化正常。

其實(shí)還可以更加詳細(xì)的打印出InitializeWinIo()中每步的執(zhí)行過(guò)程,這樣更容易判斷是哪個(gè)地方出現(xiàn)了問(wèn)題。

就先寫(xiě)到這里吧,WinIO是個(gè)很好很強(qiáng)大,很黃很暴力的一個(gè)庫(kù)~~~

到此,相信大家對(duì)“WinIO初始化失敗原因是什么”有了更深的了解,不妨來(lái)實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

網(wǎng)站題目:WinIO初始化失敗原因是什么
標(biāo)題URL:http://aaarwkj.com/article40/gppeeo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供企業(yè)網(wǎng)站制作、手機(jī)網(wǎng)站建設(shè)、動(dòng)態(tài)網(wǎng)站、標(biāo)簽優(yōu)化、微信公眾號(hào)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)
偷拍福利视频一区二区三区| 日韩人妻中文字幕在线视频| 亚洲日本精品一区二区三区| 精品一区二区三区推荐| 亚洲一区二区色黄大片| 日本国产在线一区二区| 国产精品专区日产一区| 久久亚洲av电影网站| 亚洲熟妇av一区二区| 成人国产午夜福利网| 亚洲精品成人久久av| 激情综合五月激情综合| 97在线观看免费公开| 亚洲国产黄片在线播放| 三级精品一区二区三区| 91亚洲国产成人久久| 毛片精品一区二区二区三区 | 91亚洲欧美日韩在线观看| 欧美日韩亚洲中文字幕| 亚洲天堂av日韩在线| 另类欧美亚洲中文在线综合| 国产欧美日韩国产欧美日| 未满十八禁止免费视频| 天天天干夜夜添狠操美女| 一区三区精品久久久精品| 亚洲精品一品区二品区三区| 精品国产自在久久成人| 持续侵犯人妻中文字幕| 久久国产精品午夜视频| 国产成人免费公开视频| 蜜臀av首页在线观看| 99精品亚洲一区二区| 蜜臀久久精品国产综合| 久久国产精品亚洲看片| 日韩精品在线观看你懂的| 精品欧美一区二区三区在线| 日韩欧美第一页在线观看| 日韩伦理高清在线观看| 亚洲天堂av在线播放| 日韩电影在线播放中文字幕| 九九九热免费在线观看|