vb.net只要能調(diào)用API函數(shù)CallWindowProc就可以。
創(chuàng)新互聯(lián)建站擁有10余年的建站服務(wù)經(jīng)驗,在此期間,我們發(fā)現(xiàn)較多的客戶在挑選建站服務(wù)商前都非常的猶豫。主要問題集中:在無法預(yù)知自己的網(wǎng)站呈現(xiàn)的效果是什么樣的?也無法判斷選擇的服務(wù)商設(shè)計出來的網(wǎng)頁效果自己是否會滿意?創(chuàng)新互聯(lián)建站業(yè)務(wù)涵蓋了互聯(lián)網(wǎng)平臺網(wǎng)站建設(shè)、移動平臺網(wǎng)站制作、網(wǎng)絡(luò)推廣、定制開發(fā)等服務(wù)。創(chuàng)新互聯(lián)建站網(wǎng)站開發(fā)公司本著不拘一格的網(wǎng)站視覺設(shè)計和網(wǎng)站開發(fā)技術(shù)相結(jié)合,為企業(yè)做網(wǎng)站提供成熟的網(wǎng)站設(shè)計方案。
匯編碼用Byte或Long數(shù)組儲存,如果下標(biāo)為0,那么你就可以:
Call CallWindowProc(數(shù)組(0),0,0,0,0)
然后把4個0 POP出去,中間是你要執(zhí)行的匯編碼,匯編碼最后是
ret等返回的。
第一個for完成對delay_time參數(shù)的控制,即共循環(huán)多少次內(nèi)部循環(huán)
第二個for(內(nèi)部循環(huán)),完成對j從0到199的控制,共循環(huán)200次。
翻譯成匯編就是:
(R0為傳遞參數(shù))
DELAY:
MOV R1,#200
DJNZ R1,$
DJNZ R0,DELAY
RET
VB?我不熟,下面是用匯編寫的,我運行過可以的。
//--------------------------------
.model?small
.586
.stack
.code
idstring?db?49?dup('$')
start:
mov?ax,@code
mov?ds,ax
lea?di,idstring
mov?eax,80000002h
cpuid
mov?dword?ptr?[di],eax
mov?dword?ptr?[di+4],ebx
mov?dword?ptr?[di+8],ecx
mov?dword?ptr?[di+12],edx
mov?eax,80000003h
cpuid
mov?dword?ptr?[di+16],eax
mov?dword?ptr?[di+20],ebx
mov?dword?ptr?[di+24],ecx
mov?dword?ptr?[di+28],edx
mov?eax,80000004h
cpuid
mov?dword?ptr?[di+32],eax
mov?dword?ptr?[di+36],ebx
mov?dword?ptr?[di+40],ecx
mov?dword?ptr?[di+44],edx
mov?ah,09h
lea?dx,idstring
int?21h
mov?ah,4ch
int?21h
end?start
//-------------------------------------------------------
程序確實可以執(zhí)行,輸出CPU的ID等信息。
注意:DOS下或MS-DOS下使用。
這是典型對.net構(gòu)架不理解造成的!
只要是.net編程,一定使用的是.net類庫,必須是同運行版本的.net支持方可運行。而所謂的vb.net只是說編程的語言層使用的是vb語言而已。該語言在.net構(gòu)架下被編譯成為IL語言(MSIL,嚴(yán)格說來是IL的一個子集)。而上層的語言只是產(chǎn)生軟件時所使用的一個不同語言規(guī)則而已,與IL已經(jīng)沒有任何相關(guān)性了。上層語言無論是C#還是VB,甚至是Java(J#)均只適應(yīng)編程人員的一個策略,與整個構(gòu)造沒有多大的相關(guān)性。
.net的最終目的就是讓不同的語言編程人員能協(xié)同工作,那么語言在其中的區(qū)別沒有多大了,所有的運行核心都是由.net完成的,沒有必須依賴于.net。這是沒有任何疑問的。
vb.net就是.net,只是表示用VB語言人的稱呼,用C#的則稱其為C#.net,但不管是哪種,它是無法脫離.net的。