摘要: 上次出去幫一個(gè)朋友的朋友給一個(gè)原有的.net項(xiàng)目添加一個(gè)新的功能模塊。結(jié)果,很傷,原因很簡(jiǎn)單,由于我對(duì)dotnet的工作機(jī)理想當(dāng)然,個(gè)人觀點(diǎn)占據(jù)上風(fēng),導(dǎo)致在初期設(shè)計(jì)的時(shí)候就走上了一天錯(cuò)誤的道路,郁悶了很長(zhǎng)一段時(shí)間,決定花一定時(shí)間去真正理解一些更底層,更基礎(chǔ)的東西。現(xiàn)在忽然發(fā)現(xiàn)自己在過去很長(zhǎng)的一段時(shí)間有些舍本逐末了,檢討~~~~
這...
閱讀全文
posted @
2009-05-27 11:38 moonandsun 閱讀(420) |
評(píng)論 (0) |
編輯 收藏
web2.0這個(gè)名詞不止一次的在我眼前出現(xiàn),有時(shí)候由于它的出現(xiàn)過于頻繁,以至于我還沒來(lái)得及去想,已漸漸的在內(nèi)心中接受了這個(gè)名詞。初識(shí)web2.0是在去年,具體什么時(shí)候已記不太清楚,當(dāng)初我腦海中的web2.0和我現(xiàn)在的認(rèn)識(shí)不盡相同,我當(dāng)時(shí)的認(rèn)識(shí)只是web2.0的一個(gè)方面,甚至可以說與我們所說的web2.0不相關(guān)。當(dāng)時(shí)我和我的幾個(gè)師兄在一起做一個(gè)web項(xiàng)目,當(dāng)然他們常常會(huì)提到web2.0標(biāo)準(zhǔn),起初我不是很理解,當(dāng)然現(xiàn)在也依然模糊。從網(wǎng)上在了點(diǎn)資料。網(wǎng)上如是說:WEB2.0標(biāo)準(zhǔn)不是某一個(gè)標(biāo)準(zhǔn),而是一系列標(biāo)準(zhǔn)的集合。網(wǎng)頁(yè)主要由三部分組成:結(jié)構(gòu)(Structure)、表現(xiàn)(Presentation)和行為(Behavior)。對(duì)應(yīng)的標(biāo)準(zhǔn)也分三方面:結(jié)構(gòu)化標(biāo)準(zhǔn)語(yǔ)言主要包括XHTML和XML,表現(xiàn)標(biāo)準(zhǔn)語(yǔ)言主要包括CSS,行為標(biāo)準(zhǔn)主要包括對(duì)象模型(如W3C DOM)、ECMAScript等。這些標(biāo)準(zhǔn)大部分由W3C起草和發(fā)布,也有一些是其他標(biāo)準(zhǔn)組織制訂的標(biāo)準(zhǔn),比如ECMA(European Computer Manufacturers Association)的ECMAScript標(biāo)準(zhǔn)。恍然大明白,原來(lái)自己在很長(zhǎng)一段時(shí)間都在為web2.0標(biāo)準(zhǔn)努力。不由暗暗自喜。后來(lái),每次上網(wǎng),看雜志(尤其程序員),看報(bào)紙(電腦報(bào)),web2.0的字眼是滿天飛。既然自己要考研,并且準(zhǔn)備在計(jì)算機(jī)方面發(fā)展,我認(rèn)為有必要了解web2.0。
web2.0是相對(duì)于web1.0來(lái)說的. 首先就易用性和交互性方面來(lái)說,Web1.0里,互聯(lián)網(wǎng)內(nèi)容是由少數(shù)編輯人員(或站長(zhǎng))定制的,比如搜狐;而在Web2.0里,每個(gè)人都是內(nèi)容的供稿者。標(biāo)由于web2.0主張多然參與,所以互聯(lián)網(wǎng)內(nèi)容也更加豐富和多樣化,同時(shí)web2.0采用了標(biāo)簽(tag),多媒體技術(shù),rss訂閱,在線協(xié)作等功能,用戶在使用互聯(lián)網(wǎng)的過程也更方便、快捷。就我的一個(gè)上網(wǎng)習(xí)慣來(lái)說,我關(guān)注最多的是IT技術(shù)方面的發(fā)展,一般我經(jīng)常去csdn,cnblogs,itpub等網(wǎng)站,以前我看文章都是一個(gè)網(wǎng)站一個(gè)網(wǎng)站的打開,有時(shí)候發(fā)現(xiàn)某個(gè)人的博客很適合自己的口味,于是想關(guān)注這位博主的最新動(dòng)態(tài),于是收藏的網(wǎng)址越來(lái)越多,每天想把自己關(guān)注的事情看一遍很費(fèi)時(shí)間。現(xiàn)在可不一樣了,發(fā)現(xiàn)自己的喜歡網(wǎng)站或博客,訂閱到自己的google reader中,每天上網(wǎng)第一件事,打開google reader,有什么最新新聞,最新動(dòng)態(tài)一目了然。都是互聯(lián)網(wǎng)提供的便利啊。
其次,web2.0相對(duì)于web1.0來(lái)說更突出人的作用,在互聯(lián)網(wǎng)的新時(shí)代,信息是由每個(gè)人貢獻(xiàn)出來(lái)的。各個(gè)人共同組成互聯(lián)網(wǎng)信息源。Web2.0的靈魂是人。同是,為了更好的發(fā)揮“人”的作用,web2.0的形式也更多樣化,出現(xiàn)了各種各樣的互聯(lián)網(wǎng)服務(wù),例如博客、威客、播客、維基、P2P下載、社區(qū)、分享服務(wù)等等。是“人”能夠從互聯(lián)網(wǎng)上得到不同程度上的滿足。現(xiàn)如今,用戶即所謂的“人”所產(chǎn)生的信息在互聯(lián)網(wǎng)內(nèi)容中所占的比重越來(lái)越大,而且隨著web2.0的發(fā)展,這一趨勢(shì)還會(huì)不斷加強(qiáng)。web2.0為所有互聯(lián)網(wǎng)用戶提供了一個(gè)展示自我和自我實(shí)現(xiàn)的平臺(tái)。而且隨著互聯(lián)網(wǎng)技術(shù)的發(fā)展,web2.0在生活信息化、辦公信息化方面的作用也會(huì)一步步提升,是人們的生活、學(xué)習(xí)、工作更加便捷和輕松。
總之,web2.0從某種程度上改變了人們的生活。
posted @
2009-05-20 21:14 moonandsun 閱讀(166) |
評(píng)論 (0) |
編輯 收藏
好長(zhǎng)一段時(shí)間沒有寫日志,生活在繁忙中迷茫了一段,細(xì)細(xì)想來(lái)也不知道都干了些什么,于技術(shù)方面更是毫無(wú)長(zhǎng)進(jìn),靜下心來(lái)下篇文章,安撫一下浮躁的心靈。
現(xiàn)在開始Maven2的學(xué)習(xí)。
第一步不用說,下載Maven2,以待安裝。
其實(shí)我們有必要了解Maven2到底是一個(gè)干么的東西,要使用它首先得知道它是干么的。
先看看ReadMe.txt
What is it?
-----------
Maven is a software project management and comprehension tool. Based on
the concept of a Project Object Model (POM), Maven can manage a project's
build, reporting and documentation from a central piece of information.
now we got it .it is a tool which can manage and comprehend our project .
系統(tǒng)需求,一般我們都能達(dá)到,忽略。
System Requirements
-------------------
JDK:
1.4 or above (this is to execute Maven - it still allows you to build against 1.3
and prior JDK's).
Memory:
No minimum requirement.
Disk:
No minimum requirement. Approximately 100MB will be used for your local repository,
however this will vary depending on usage and can be removed and redownloaded at
any time.
Operating System:
No minimum requirement. On Windows, Windows NT and above or Cygwin is required for
the startup scripts. Tested on Windows XP, Fedora Core and Mac OS X.s
下一步,安裝。我建議看看文檔。
Installing Maven
----------------
1) Unpack the archive where you would like to store the binaries, eg:
Unix-based Operating Systems (Linux, Solaris and Mac OS X)
tar zxvf apache-maven-2.0.x.tar.gz
Windows 2000/XP
unzip apache-maven-2.0.x.zip
2) A directory called "apache-maven-2.0.x" will be created.
3) Add the bin directory to your PATH, eg:
Unix-based Operating Systems (Linux, Solaris and Mac OS X)
export PATH=/usr/local/apache-maven-2.0.x/bin:$PATH
Windows 2000/XP
set PATH="c:\program files\apache-maven-2.0.x\bin";%PATH%
4) Make sure JAVA_HOME is set to the location of your JDK
我用的是winXP,看這句就可以了。
set PATH="c:\program files\apache-maven-2.0.x\bin";%PATH%
其中 “c:\program files\apache-maven-2.0.x\bin”為maven2解壓路徑。
最后一步測(cè)試一下是否成功。
5) Run "mvn --version" to verify that it is correctly installed.

OK,it works~~~
posted @
2009-05-05 22:10 moonandsun 閱讀(225) |
評(píng)論 (0) |
編輯 收藏
十進(jìn)制,八進(jìn)制,十六進(jìn)制,二進(jìn)制相互轉(zhuǎn)換
' 用途:將十進(jìn)制轉(zhuǎn)化為二進(jìn)
' 輸入:Dec(十進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:Long
' 輸出:DEC_to_BIN(二進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647,輸出最大數(shù)為1111111111111111111111111111111(31個(gè)1)
Public Function DEC_to_BIN(Dec As Long) As String
DEC_to_BIN = ""
Do While Dec > 0
DEC_to_BIN = Dec Mod 2 & DEC_to_BIN
Dec = Dec \ 2
Loop
End Function
' 用途:將二進(jìn)制轉(zhuǎn)化為十進(jìn)制
' 輸入:Bin(二進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:BIN_to_DEC(十進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:Long
' 輸入的最大數(shù)為1111111111111111111111111111111(31個(gè)1),輸出最大數(shù)為2147483647
Public Function BIN_to_DEC(ByVal Bin As String) As Long
Dim i As Long
For i = 1 To Len(Bin)
BIN_to_DEC = BIN_to_DEC * 2 + Val(Mid(Bin, i, 1))
Next i
End Function
' 用途:將十六進(jìn)制轉(zhuǎn)化為二進(jìn)制
' 輸入:Hex(十六進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:HEX_to_BIN(二進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647個(gè)字符
Public Function HEX_to_BIN(ByVal Hex As String) As String
Dim i As Long
Dim B As String
Hex = UCase(Hex)
For i = 1 To Len(Hex)
Select Case Mid(Hex, i, 1)
Case "0": B = B & "0000"
Case "1": B = B & "0001"
Case "2": B = B & "0010"
Case "3": B = B & "0011"
Case "4": B = B & "0100"
Case "5": B = B & "0101"
Case "6": B = B & "0110"
Case "7": B = B & "0111"
Case "8": B = B & "1000"
Case "9": B = B & "1001"
Case "A": B = B & "1010"
Case "B": B = B & "1011"
Case "C": B = B & "1100"
Case "D": B = B & "1101"
Case "E": B = B & "1110"
Case "F": B = B & "1111"
End Select
Next i
While Left(B, 1) = "0"
B = Right(B, Len(B) - 1)
Wend
HEX_to_BIN = B
End Function
' 用途:將二進(jìn)制轉(zhuǎn)化為十六進(jìn)制
' 輸入:Bin(二進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:BIN_to_HEX(十六進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647個(gè)字符
Public Function BIN_to_HEX(ByVal Bin As String) As String
Dim i As Long
Dim H As String
If Len(Bin) Mod 4 <> 0 Then
Bin = String(4 - Len(Bin) Mod 4, "0") & Bin
End If
For i = 1 To Len(Bin) Step 4
Select Case Mid(Bin, i, 4)
Case "0000": H = H & "0"
Case "0001": H = H & "1"
Case "0010": H = H & "2"
Case "0011": H = H & "3"
Case "0100": H = H & "4"
Case "0101": H = H & "5"
Case "0110": H = H & "6"
Case "0111": H = H & "7"
Case "1000": H = H & "8"
Case "1001": H = H & "9"
Case "1010": H = H & "A"
Case "1011": H = H & "B"
Case "1100": H = H & "C"
Case "1101": H = H & "D"
Case "1110": H = H & "E"
Case "1111": H = H & "F"
End Select
Next i
While Left(H, 1) = "0"
H = Right(H, Len(H) - 1)
Wend
BIN_to_HEX = H
End Function
' 用途:將十六進(jìn)制轉(zhuǎn)化為十進(jìn)制
' 輸入:Hex(十六進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:HEX_to_DEC(十進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:Long
' 輸入的最大數(shù)為7FFFFFFF,輸出的最大數(shù)為2147483647
Public Function HEX_to_DEC(ByVal Hex As String) As Long
Dim i As Long
Dim B As Long
Hex = UCase(Hex)
For i = 1 To Len(Hex)
Select Case Mid(Hex, Len(Hex) - i + 1, 1)
Case "0": B = B + 16 ^ (i - 1) * 0
Case "1": B = B + 16 ^ (i - 1) * 1
Case "2": B = B + 16 ^ (i - 1) * 2
Case "3": B = B + 16 ^ (i - 1) * 3
Case "4": B = B + 16 ^ (i - 1) * 4
Case "5": B = B + 16 ^ (i - 1) * 5
Case "6": B = B + 16 ^ (i - 1) * 6
Case "7": B = B + 16 ^ (i - 1) * 7
Case "8": B = B + 16 ^ (i - 1) * 8
Case "9": B = B + 16 ^ (i - 1) * 9
Case "A": B = B + 16 ^ (i - 1) * 10
Case "B": B = B + 16 ^ (i - 1) * 11
Case "C": B = B + 16 ^ (i - 1) * 12
Case "D": B = B + 16 ^ (i - 1) * 13
Case "E": B = B + 16 ^ (i - 1) * 14
Case "F": B = B + 16 ^ (i - 1) * 15
End Select
Next i
HEX_to_DEC = B
End Function
' 用途:將十進(jìn)制轉(zhuǎn)化為十六進(jìn)制
' 輸入:Dec(十進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:Long
' 輸出:DEC_to_HEX(十六進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647,輸出最大數(shù)為7FFFFFFF
Public Function DEC_to_HEX(Dec As Long) As String
Dim a As String
DEC_to_HEX = ""
Do While Dec > 0
a = CStr(Dec Mod 16)
Select Case a
Case "10": a = "A"
Case "11": a = "B"
Case "12": a = "C"
Case "13": a = "D"
Case "14": a = "E"
Case "15": a = "F"
End Select
DEC_to_HEX = a & DEC_to_HEX
Dec = Dec \ 16
Loop
End Function
' 用途:將十進(jìn)制轉(zhuǎn)化為八進(jìn)制
' 輸入:Dec(十進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:Long
' 輸出:DEC_to_OCT(八進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647,輸出最大數(shù)為17777777777
Public Function DEC_to_OCT(Dec As Long) As String
DEC_to_OCT = ""
Do While Dec > 0
DEC_to_OCT = Dec Mod 8 & DEC_to_OCT
Dec = Dec \ 8
Loop
End Function
' 用途:將八進(jìn)制轉(zhuǎn)化為十進(jìn)制
' 輸入:Oct(八進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:OCT_to_DEC(十進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:Long
' 輸入的最大數(shù)為17777777777,輸出的最大數(shù)為2147483647
Public Function OCT_to_DEC(ByVal Oct As String) As Long
Dim i As Long
Dim B As Long
For i = 1 To Len(Oct)
Select Case Mid(Oct, Len(Oct) - i + 1, 1)
Case "0": B = B + 8 ^ (i - 1) * 0
Case "1": B = B + 8 ^ (i - 1) * 1
Case "2": B = B + 8 ^ (i - 1) * 2
Case "3": B = B + 8 ^ (i - 1) * 3
Case "4": B = B + 8 ^ (i - 1) * 4
Case "5": B = B + 8 ^ (i - 1) * 5
Case "6": B = B + 8 ^ (i - 1) * 6
Case "7": B = B + 8 ^ (i - 1) * 7
End Select
Next i
OCT_to_DEC = B
End Function
' 用途:將二進(jìn)制轉(zhuǎn)化為八進(jìn)制
' 輸入:Bin(二進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:BIN_to_OCT(八進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647個(gè)字符
Public Function BIN_to_OCT(ByVal Bin As String) As String
Dim i As Long
Dim H As String
If Len(Bin) Mod 3 <> 0 Then
Bin = String(3 - Len(Bin) Mod 3, "0") & Bin
End If
For i = 1 To Len(Bin) Step 3
Select Case Mid(Bin, i, 3)
Case "000": H = H & "0"
Case "001": H = H & "1"
Case "010": H = H & "2"
Case "011": H = H & "3"
Case "100": H = H & "4"
Case "101": H = H & "5"
Case "110": H = H & "6"
Case "111": H = H & "7"
End Select
Next i
While Left(H, 1) = "0"
H = Right(H, Len(H) - 1)
Wend
BIN_to_OCT = H
End Function
' 用途:將八進(jìn)制轉(zhuǎn)化為二進(jìn)制
' 輸入:Oct(八進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:OCT_to_BIN(二進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647個(gè)字符
Public Function OCT_to_BIN(ByVal Oct As String) As String
Dim i As Long
Dim B As String
For i = 1 To Len(Oct)
Select Case Mid(Oct, i, 1)
Case "0": B = B & "000"
Case "1": B = B & "001"
Case "2": B = B & "010"
Case "3": B = B & "011"
Case "4": B = B & "100"
Case "5": B = B & "101"
Case "6": B = B & "110"
Case "7": B = B & "111"
End Select
Next i
While Left(B, 1) = "0"
B = Right(B, Len(B) - 1)
Wend
OCT_to_BIN = B
End Function
' 用途:將八進(jìn)制轉(zhuǎn)化為十六進(jìn)制
' 輸入:Oct(八進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:OCT_to_HEX(十六進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647個(gè)字符
Public Function OCT_to_HEX(ByVal Oct As String) As String
Dim Bin As String
Bin = OCT_to_BIN(Oct)
OCT_to_HEX = BIN_to_HEX(Bin)
End Function
' 用途:將十六進(jìn)制轉(zhuǎn)化為八進(jìn)制
' 輸入:Hex(十六進(jìn)制數(shù))
' 輸入數(shù)據(jù)類型:String
' 輸出:HEX_to_OCT(八進(jìn)制數(shù))
' 輸出數(shù)據(jù)類型:String
' 輸入的最大數(shù)為2147483647個(gè)字符
Public Function HEX_to_OCT(ByVal Hex As String) As String
Dim Bin As String
Hex = UCase(Hex)
Bin = HEX_to_BIN(Hex)
HEX_to_OCT = BIN_to_OCT(Bin)
End Function
VB自帶函數(shù):
十進(jìn)制轉(zhuǎn)八進(jìn)制:Oct(num)
十六進(jìn)制轉(zhuǎn)八進(jìn)制:oct("&H" & num)
十進(jìn)制轉(zhuǎn)十六進(jìn)制:hex(num)
八進(jìn)制轉(zhuǎn)十六進(jìn)制:hex("&O" & num)
十六進(jìn)制轉(zhuǎn)換為十進(jìn)制
Dim str As String
str = Text2.Text
Text10.Text = CLng("&H" & str)
文章出處:http://blog.programfan.com/article.asp?id=11903
感謝作者的無(wú)私奉獻(xiàn)、、、、
posted @
2009-03-29 10:57 moonandsun 閱讀(1466) |
評(píng)論 (0) |
編輯 收藏
一、在VB中聲明API函數(shù)有兩種方法:如果我們只在某個(gè)窗體中使用API函數(shù),我們可以在窗體代碼的General部分聲明它:
聲明的語(yǔ)法是:
Private Declare Function ...
Private Declare Sub.....
這里必須采用Private聲明,因?yàn)檫@個(gè)API函數(shù)只能被一個(gè)窗體內(nèi)的程序所調(diào)用。
如果我們的程序有多個(gè)窗體構(gòu)成,而且我們需要在多個(gè)窗體中使用同一個(gè)API函數(shù),就需要在模塊中聲明了。
先添加一個(gè)模塊(如圖示),
然后采用如下語(yǔ)法聲明:
Public Declare Function....
Public Declare Sub....
Public聲明的含義是把API函數(shù)作為一個(gè)公共函數(shù)或過程,在一個(gè)工程中的任何位置(包括所有的窗體和模塊)都能直接調(diào)用它。 聲明完畢我們就能在程序中使用此API函數(shù)了。
二、可采用以下幾種方式使用API函數(shù),以SetWindowPos函數(shù)為例:
(1)忽略函數(shù)返回值的調(diào)用:
SetWindowPos Form1.hWnd, -2 ,0 ,0 ,0, 0, 3
注意此時(shí)函數(shù)的參數(shù)是不加括號(hào)的。
(2)Call方法調(diào)用:
Call SetWindowPos(Form1.hWnd, -2, 0, 0, 0, 3)
注意這里需要加上括號(hào),但我們不取回函數(shù)的返回值。
(3)取得函數(shù)返回值的調(diào)用:
MyLng = SetWindowPos(Form1.hWnd, -2, 0, 0, 0, 3)
此時(shí)需要加上括號(hào),而且我們必須事先定義一個(gè)變量(變量的類型與函數(shù)返回值類型相同)來(lái)
存儲(chǔ)API函數(shù)的返回值。
三、幾個(gè)問題的說明:
(1)聲明中的Lib 和 Alias 是怎么回事
一般情況下WIN32API函數(shù)總是包含在WINDOWS系統(tǒng)自帶的或是其它公司提供的動(dòng)態(tài)連接庫(kù)DLL中,而Declare語(yǔ)句中的Lib關(guān)鍵字就用來(lái)指定DLL(動(dòng)態(tài)連接庫(kù))文件的路徑,這樣VB才能找到這個(gè)DLL文件,然后才能使用其中的API函數(shù)。如果我們只是列出DLL文件名而不指出其完整的路徑的話,VB會(huì)自動(dòng)到.EXE文件所在目錄、當(dāng)前工作目錄、WINDOWS\SYSTEM目錄、WINDOWS目錄下搜尋這個(gè)DLL文件。所以如果所要使用DLL文件不在上述幾個(gè)目錄下的話,我們應(yīng)該指明其完整路徑。
Alias用于指定API函數(shù)的別名,如果我們調(diào)用的API函數(shù)要使用字符串(參數(shù)中包含String型)的話,Alias關(guān)鍵字是必須的。這是因?yàn)樵贏NSI和Unicode字符集中同一API函數(shù)的名稱可能是不一樣的,為了保證不出現(xiàn)聲明錯(cuò)誤,我們使用Alias關(guān)鍵字指出API函數(shù)的別名,一般來(lái)說在WIN9X平臺(tái)下我們把API函數(shù)名后加一個(gè)大寫A作為別名即可。
(2)常見的API參數(shù)類型的說明
API函數(shù)的參數(shù)中最常見的是長(zhǎng)整Long型數(shù)據(jù)類型,例如API中的句柄、一些特定的常量、函數(shù)的返回值都是此類型 的值;另外幾種常見的參數(shù)類型有:整型Integer、Byte型、String型等。
(3)聲明中的ByVal是作什么用的
這跟VB的參數(shù)傳遞方式有關(guān),在默認(rèn)情況下VB是通過地址傳遞方式傳遞函數(shù)的參數(shù)、而有些API函數(shù)要求必須采用傳值方式來(lái)傳遞函數(shù)參數(shù)(這兩種參數(shù)傳遞方式是不同的,前者傳遞的是一個(gè)指針,而后者要求是參數(shù)真實(shí)的值)。這樣就會(huì)發(fā)生錯(cuò)誤,解決的辦法是在API函數(shù)參數(shù)聲明的前面加上ByVal關(guān)鍵字,這樣VB就采用傳值方式傳遞參數(shù)了。
(4)怎樣得到完整的API函數(shù)聲明
VB自帶了API文本查看器API TEXT VIEWER,我們可以在其中找到API函數(shù)的完整聲明,然后把它粘貼到程序中即可。
原文地址:http://www.enet.com.cn/article/2004/0312/A20040312293927.shtml
posted @
2009-03-28 16:46 moonandsun 閱讀(161) |
評(píng)論 (0) |
編輯 收藏