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

 

    摘要: 怎样确认某个窗子口是否已创建,怎样查找某个特定的窗口,多谢各位帮助, ......
 ·继续高分    »显示摘要«
    摘要: jdk 已经下载,但我用editplus编写程序,在dos下无法用javac命令 执行编译,为什么? ......


一个VCL的Thread的问题请高手指教

我想请教怎么在Thread中放非可视华控件,比如我要在Thread中放一个ClientSocket然后通过开多个线程来对多个IP进行扫描(用ClientSocket去连接那些IP,如果连接成功就表示打开了)请教该怎么做呢?  
  我在线程中new一个出来,然后自己写它的OnError函数好象有点不对呀,  
  然后我又在Thread中包含一个DateModule,在DateModule放ClientSocket好象也不行,请教该怎么做呢??  
   
  还有就是  
    for   (int   i=0;   i<10;   i++)  
              TMyThread   *my   =new   TMyThread(false);  
  这样是不是就是有10个线程在同时运行呢?  
 

NO.1   作者: Adayuer

TMyThread   *my[10]   ;  
   
  for   (int   i=0;i<10;i++)  
      my[i]   =   new   TMyThread(false);  
   
   
   
  delete   []my   ;

NO.2   作者: jishiping

在线程里使用ClientSocket,它的属性ClientType必须为ctBlocking,不能使用ctNonBlocking。如果使用ctNonBlocking的话,就是消息驱动的了,而  
  BCB的TThread对于消息的处理是有缺陷的,不能在TThread里响应消息,所以在  
  TThread里指定消息的事件处理函数是没有用的。当ClientType为ctBlocking时,  
  程序就象DOS下,直接是顺序执行了。比如:  
  TClientSocket*   Socket   =   new   TClientSocket(NULL);  
  Socket->ClientType   =   ctBlocking;  
  Socket->Address   =   "111.111.111.1";  
  Socket->Port   =   100;  
  try   {  
          Socket->Active   =   true;    
          //连接成功  
  }  
  catch(Exception&   e)   {  
          //连接失败  
          MessageBox(NULL,   e.Message(),   "Error",   MB_OK);  
  }  
  //.......  
  delete   Socket;


 ·mysql可以,为什么db2不行    »显示摘要«
    摘要: 我用java通过jdbc实现了用树的形式将mysql中所有数据库的名称,每个数据库所有表的名称及相应列表名称显示出来。但不知道为什么db2就不行呢?该不会是db2没有实现jdbc那些接口把,我换用sqlserver也实现了,jdbc连接db2也一切正常,请高手指点指点! ......
» 本期热门文章:

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