当前位置:首页
开发技术指南» 文章正文
    引言:
 

 

 ·初学者的问题,请大家帮忙    »显示摘要«
    摘要: 下面这几个问题不明白: 1.表单里怎么做一个submit按钮 2.表单怎么实现提交和获取提交的值 3.视图要怎么建 4.怎么结合数据库 请大家不要取笑,确实不会,拜托大家了! ......
    摘要: 如何获得jpeg、bmp文件的对比度和亮度?或这给定一个标准的jpeg文件,把其他jpeg文件的对比度和亮度调整为标准jpeg的对比度和亮度? ......


在VB6中,如何获得本机的计算机名和IP地址

本机的IP地址是指本机是局域网中的地址。谢谢!

NO.1   作者: duanyl821004

GetComputerName  
  为API函数:  
  e.x.:  
  nSize   =   80    
  cpname   =   String(nSize,   Chr(0))   Chr(0)·µ»Ø¿Õ   ""     ,ex.Chr(65)·µ»Ø   A  
  GetComputerName   cpname,   nSize   µÃµ½name·ÅÔÚCpNameÖУ¬Îª80×Ö·û³¤  
  cpname   =   Left(cpname,   InStr(cpname,   Chr(0))   -   1)   ɾȥCpNameÖеĺóÃæµÄ¿Õ¸ñ£¬ÓÉ80¼õΪʵ¼Ê×Ö·ûÊý  
  结果在cpname中  
 

NO.2   作者: gpo2002

all   ip  
   
  Option   Explicit  
   
    Copyright   ?1996-2003   VBnet,   Randy   Birch,   All   Rights   Reserved.  
    Some   pages   may   also   contain   other   copyrights   by   the   author.  
   
    Distribution:   You   can   freely   use   this   code   in   your   own  
                                applications,   but   you   may   not   reproduce  
                                or   publish   this   code   on   any   web   site,  
                                online   service,   or   distribute   as   source  
                                on   any   media   without   express   permission.  
   
  Private   Const   MAX_ADAPTER_NAME_LENGTH                   As   Long   =   256  
  Private   Const   MAX_ADAPTER_DESCRIPTION_LENGTH     As   Long   =   128  
  Private   Const   MAX_ADAPTER_ADDRESS_LENGTH             As   Long   =   8  
  Private   Const   ERROR_SUCCESS     As   Long   =   0  
   
  Private   Type   IP_ADDRESS_STRING  
          IpAddr(0   To   15)     As   Byte  
  End   Type  
   
  Private   Type   IP_MASK_STRING  
          IpMask(0   To   15)     As   Byte  
  End   Type  
   
  Private   Type   IP_ADDR_STRING  
          dwNext           As   Long  
          IpAddress     As   IP_ADDRESS_STRING  
          IpMask           As   IP_MASK_STRING  
          dwContext     As   Long  
  End   Type  
   
  Private   Type   IP_ADAPTER_INFO  
      dwNext                                 As   Long  
      ComboIndex                         As   Long     reserved  
      sAdapterName(0   To   (MAX_ADAPTER_NAME_LENGTH   +   3))                 As   Byte  
      sDescription(0   To   (MAX_ADAPTER_DESCRIPTION_LENGTH   +   3))   As   Byte  
      dwAddressLength               As   Long  
      sIPAddress(0   To   (MAX_ADAPTER_ADDRESS_LENGTH   -   1))               As   Byte  
      dwIndex                               As   Long  
      uType                                   As   Long  
      uDhcpEnabled                     As   Long  
      CurrentIpAddress             As   Long  
      IpAddressList                   As   IP_ADDR_STRING  
      GatewayList                       As   IP_ADDR_STRING  
      DhcpServer                         As   IP_ADDR_STRING  
      bHaveWins                           As   Long  
      PrimaryWinsServer           As   IP_ADDR_STRING  
      SecondaryWinsServer       As   IP_ADDR_STRING  
      LeaseObtained                   As   Long  
      LeaseExpires                     As   Long  
  End   Type  
   
  Private   Declare   Function   GetAdaptersInfo   Lib   "iphlpapi.dll"   _  
      (pTcpTable   As   Any,   _  
        pdwSize   As   Long)   As   Long  
         
  Private   Declare   Sub   CopyMemory   Lib   "kernel32"   _  
        Alias   "RtlMoveMemory"   _  
      (dst   As   Any,   _  
        src   As   Any,   _  
        ByVal   bcount   As   Long)  
         
   
  Private   Sub   Command1_Click()  
   
      pass   a   character   to   be   used   as   the  
      delimiter   in   the   list   of   returned   addresses.  
        Text1.Text   =   LocalIPAddresses("+")  
   
   
  End   Sub  
   
         
  Public   Function   LocalIPAddresses(ByVal   sDelim   As   String)   As   String  
         
      api   vars  
        Dim   cbRequired     As   Long  
        Dim   buff()             As   Byte  
        Dim   Adapter           As   IP_ADAPTER_INFO  
        Dim   AdapterStr     As   IP_ADDR_STRING  
           
      working   vars  
        Dim   ptr1                 As   Long  
        Dim   sIPAddr           As   String  
        Dim   sAllAddr         As   String  
         
        Call   GetAdaptersInfo(ByVal   0&,   cbRequired)  
   
        If   cbRequired   >   0   Then  
           
              ReDim   buff(0   To   cbRequired   -   1)   As   Byte  
               
              If   GetAdaptersInfo(buff(0),   cbRequired)   =   ERROR_SUCCESS   Then  
               
                  get   a   pointer   to   the   data   stored   in   buff()  
                    ptr1   =   VarPtr(buff(0))  
                                       
                  ptr1   is   0   when   no   more   adapters  
                    Do   While   (ptr1   <>   0)  
                     
                        copy   the   data   from   the   pointer   to   the  
                        first   adapter   into   the   IP_ADAPTER_INFO   type  
                          CopyMemory   Adapter,   ByVal   ptr1,   LenB(Adapter)  
                     
                          With   Adapter  
                     
                              the   DHCP   IP   address   is   in   the  
                              IpAddress.IpAddr   member  
                                sIPAddr   =   TrimNull(StrConv(.IpAddressList.IpAddress.IpAddr,   vbUnicode))  
                                sAllAddr   =   sAllAddr   &   sIPAddr   &   "+"  
                                 
                              more?  
                                ptr1   =   .dwNext  
                                 
                          End   With     With   Adapter  
                           
                    Loop     Do   While   (ptr1   <>   0)  
   
              End   If     If   GetAdaptersInfo  
        End   If     If   cbRequired   >   0  
   
      remove   the   last   comma  
        If   Len(sAllAddr)   >   0   Then  
              sAllAddr   =   Left$(sAllAddr,   Len(sAllAddr)   -   1)  
        End   If  
                     
      return   any   string   found  
        LocalIPAddresses   =   sAllAddr  
         
         
  End   Function  
   
   
  Private   Function   TrimNull(item   As   String)  
   
          Dim   pos   As   Integer  
         
        double   check   that   there   is   a   chr$(0)   in   the   string  
          pos   =   InStr(item,   Chr$(0))  
          If   pos   Then  
                      TrimNull   =   Left$(item,   pos   -   1)  
          Else:   TrimNull   =   item  
          End   If  
       
  End   Function  
  --end   block--  
   
 

NO.3   作者: lxcc

拖一个winsock控件  
  Private   Sub   Command1_Click()  
          MsgBox   Winsock1.LocalHostName   &   Winsock1.LocalIP  
  End   Sub

NO.4   作者: ludgee

lxcc的最简单,直接调用winsock的LocalHostName,LocalIP属性,远端的主机名和IP地址可以用RemoteHost,RemoteHostIP属性获得。API函数GetComputerName有一个相对应的函数SetComputerName可以设置计算机名称。  
  Private   Declare   Function   GetComputerName   Lib   "kernel32"   Alias   _  
          "GetComputerNameA"   (ByVal   lpBuffer   As   String,   nSize   As   Long)   As   Long  
  Private   Declare   Function   SetComputerName   Lib   "kernel32"   Alias   _  
          "SetComputerNameA"   (ByVal   lpComputerName   As   String)   As   Long  
           
   
  Private   Sub   Command1_Click()  
          Dim   Name1   As   String   *   255  
          Dim   name   As   String  
          Dim   i   As   Integer  
           
          i   =   GetComputerName(Name1,   255)  
           
          If   i   <>   0   Then  
                  name   =   Name1  
          Else  
                  name   =   "unknown"  
          End   If  
           
          Text1   =   name  
           
  End   Sub  
   
  Private   Sub   Command2_Click()  
          Dim   i   As   Integer  
          Dim   name   As   String  
           
          name   =   Text1.Text  
           
          i   =   SetComputerName(name)  
          If   i   =   0   Then  
                  MsgBox   "fail!",   vbOKOnly  
          Else  
                  MsgBox   "success!",   vbOKOnly  
          End   If  
           
                   
  End   Sub  
 


    摘要: combobox控件的哪个事件是只要选项有为、变动就触发??? ......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE