你看看是否限定了IDC_EDIT2的位数。

解决方案 »

  1.   

    没有呀,而且SetDlgItemText(hDlg,IDC_EDIT2,“01000001;sfasfafsasfasf;23;ssfsf"); 的结果是正确的
      

  2.   

    是指针的问题,不知道你如可给lss指针赋值,但这样用肯定是没问题的:
    char szbuf[32];
    strcpy(szbuf,"dskjgnkdjrhgjkehjskdhn");
    SetDlgItemText(hDlg,IDC_EDIT2,(LPCTSTR)szbuf);    
      

  3.   

    是指针的问题,不知道你如可给lss指针赋值,但这样用肯定是没问题的:
    char szbuf[32];
    strcpy(szbuf,"dskjgnkdjrhgjkehjskdhn");
    SetDlgItemText(hDlg,IDC_EDIT2,(LPCTSTR)szbuf);    
      

  4.   

    用_strdup给指针赋值char * sbuf;
    sbuf = strcpy("dskjgnkdjrhgjkehjskdhn");
    free(sbuf);
      

  5.   

    我在程序的使用是:
    class MyFile{
    public:
    char* lpGoods;
    char* lpsubstr;
    FILE* Filep;
    MyFile(){};
    int OpenFile(const char* FName,const char* Mode="r");
    int SearchUser(FILE* file,const char* strUser,const char* strPwd);
    int SearchGoods(FILE* file,const char* strcode) ;
    int CopySubStr(int nP1,int nP2);
    ~MyFile(){};
    };char ReBuf[]="sfasfasfgsdf";
    MyFile::lpGoods=ReBuf; //在另一个函数中
    MyFile mf;
    SetDlgItemText(hDlg,IDC_EDIT2,(LPCTSTR)mf.lpGoods);
    “关键是只赋进去四个字符”!!!!!!
    为什么????
    百思不得其解!!!!!!!!
      

  6.   

    前面对:用strcpy()是传值.直接用=是传址。
      

  7.   

    是不是那个Edit框的宽度只能容纳4个字符,而且没有设Auto HScroll(ES_AUTOHSCROLL)?
    这样Edit会把多出的字符剪切掉...