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

 ·今天最后给饼子    »显示摘要«
    摘要: rt ......
 ·再给饼子咯    »显示摘要«
    摘要: rt ......


全局变量问题

现有两段代码,主要是跟全局变量有关,由于测试条件达不到,没有办法测试,只好问问各位了!  
  Public   UserId   As   String  
  Private   Sub   Timer1_Timer()  
  Dim   rs   As   ADODB.Recordset  
  Dim   autoid,   UserNumber,   MessageContent,   UserId   As   String     Dim   tempsql   As   String  
  Dim   sql   As   String                    
   
  On   Error   GoTo   lastcode  
  If   IsLeftPoint   Then  
  Set   rs   =   New   ADODB.Recordset  
          If   Wavecom1.SendBufCount   >   0   And   Wavecom1.SendBufCount   <=   10   Then  
    tempsql   =   "select   top   10     AutoID,isnull(UserNumber,0)   as   UserNumber,isnull(MessageContent,)   as   MessageContent,userid   from   T_Out_Modem       "  
          Set   rs   =   ExecSql(tempsql,   CONN2)  
          While   Not   rs.EOF             数据库  
              If   IsLeftPoint   Then  
                    autoid   =   CStr(rs("autoid"))  
                    UserNumber   =   rs("UserNumber")  
                    MessageContent   =   rs("MessageContent")  
                    UserId   =   rs("userid")                                         modify   by   zhang   05.8.5  
                     
                    Wavecom1.SendSM   UserNumber,   MessageContent  
                    CONN2.Execute   ("delete     T_Out_Modem     where     autoid="   +   autoid   +   "")  
                    rs.MoveNext  
              Else  
                Exit   Sub  
              End   If  
                    DoEvents  
          Wend  
       
          rs.Close  
          Set   rs   =   Nothing  
      End   If  
  End   If  
  End   Sub  
   
  Private   Sub   Wavecom1_SendResult(SM   As   String,   SIM   As   String,   result   As   CommModule.enumSendResult)  
  Dim   datestr   As   String  
  datestr   =   Format(Now,   "yyyy-mm-dd   hh:mm:ss")  
  If   result   =   Success   Then  
        addLog1   datestr,   "发送成功",   SIM,   SM,   "1"  
        addLog2   datestr,   "发送成功",   SIM,   SM,   "1",   UserId  
        showListInfo   datestr,   1,   SIM,   SM,   UserId  
        Call   ChangePoint  
        Call   IsLeftPoint2  
       
  Else  
      addLog1   datestr,   "发送失败",   SIM,   SM,   "4"  
      showListInfo   datestr,   2,   SIM,   SM,   UserId  
  End   If  
  End   Sub  
   
  现定义了userid为全局变量,主要是为了下边函数的调用,小弟担心的是在后边函数调用的时候userid可能变成空值,会不会出现这样的问题,如果出现了该如何解决,谢谢!

NO.1   作者: pweixing

把   Public   UserId   As   String   放在   module   里面去定义。  
 

NO.2   作者: zuoxingyu

Dim   autoid,   UserNumber,   MessageContent,   UserId   As   String     Dim   tempsql   As   String  
  在这里定义的是过程级别的USERID,每次时间控件触发后都制空了  
   
  addLog2   datestr,   "发送成功",   SIM,   SM,   "1",   UserId  
  在这里得到的USERID的PUBLIC里定义好的  
   
   
  应该不会出现你想的问题的。如果出现了,你设置个断点进行调试下。  
   
 


    摘要: 我想跨平台,所以选java,但是java做界面实在废话太多,所以啊,我想这样 我跨的平台就只有win和linux 所以呢,我用java写点东西放到最下面一层,在win上我用c#或者什么delphi,rad一下,主要是界面逻辑,在linux上呢我就用kylix,rad一下,大家说这样好不好? 那么,我怎么让native code 调用java对象呢? 我对java只知道点皮毛,大家教我,谢谢......
» 本期热门文章:

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