各位大侠帮帮忙,我现在要做一个简单的东西,就是将一些信息显示出来,我选择了用richedit控件,但是不会用。我的构思就是通过点击一个按钮,调用一个函数获取我的网络设备,然后将这些信息显示出来。获取网络设备的函数如下:
#include "pcap.h"
void getdevs() 

   pcap_if_t *alldevs,*d; 
   int i=0; 
   char errbuf[PCAP_ERRBUF_SIZE];
   /* PCAP_ERRBUF_SIZE =256,在pcap.h中定义 */             
    
    if (pcap_findalldevs(&alldevs, errbuf) == -1) /* 这个API用来获得网卡的列表 */
     {  fprintf(stderr,"Error in pcap_findalldevs: %s\n", errbuf); 
        return; 
     }  
     /* 显示列表的响应字段的内容 */ 
       for(d=alldevs;d;d=d->next) 
       {   printf("%d. %s", ++i, d->name); 
           if (d->description)  printf(" (%s)\n", d->description); 
           else  printf(" (No description available)\n"); 
   } 
   if(i==0) 
   {printf("\nNo interfaces found! Make sure WinPcap is installed.\n"); 
        return; 
   } 
   /*We don't need any more the device list. Free it */ 
       pcap_freealldevs(alldevs); 
  }
这是控制台程序的代码,我想将这些打印出来的信息显示在richedit中,假如我现在新建了一个IDC_RICHEDIT的富文本控件,我要怎么操作才能达到我的目的呢,希望高手能给出详细的代码来,只拿出函数的话,我还是不太明白,因为网上找到的在richedit中添加文本的不管用。谢谢了,管用的话,分全给!!!

解决方案 »

  1.   

    你是要通过控制台将信息输出到RichEdit?
      

  2.   

    不是,我的意思是,原本这个程序仅是个控制台程序,信息是在那个命令提示符里的黑框框里显示出来的,现在我就想给它添加个界面,希望能把消息在richedit控件里显示出来!
      

  3.   

    richedit直接SetWindowText就可以啊
      

  4.   

    说白了就是控制台程序转MFC 使用RichEidt
    如果没有什么颜色等特殊显示要求 可以只用CEditLZ 可新建MFC工程 使用你的那个获取网络设备的函数 返回的内容显示到CEdit控件中就行
    至于如何显示出来 可以给控件关联变量 也可以用SetWindowText之类的函数
    不难的 好好研究一下吧
      

  5.   

    我建立类向导的时候把RichEdit添加为Value的了,改过来后,函数就很多了,但是我怎么才能让他显示的时候自动换行,或者添加的时候,不是从后面添加也不是覆盖以前的,而是在下面一行添加呢?
      

  6.   

    我有点懵了
    自动换行要设置MutiLine属性
    不覆盖以前的
    参考一下代码
    lInfoLen = m_reditOutput.GetTextLength();
    m_reditOutput.SetSel(lInfoLen, lInfoLen);
    m_reditOutput.ReplaceSel(strInfo);
      

  7.   

    RichEdit 属性设置多行解决问题了!谢谢各位!
      

  8.   

    如何在程序里向RichEdit输入文字
    http://www.codepads.com/2010-04-03-09-32-37/40-vc--windows/155-richedit.html