我的意思是不用定义COM或者什么DLL之类的东东,
就象SDK中那样,直接写在头文件中的那种!!!!
可是我写在头文件的老是提示我出错,
那位老兄能帮我解决啊,谢谢!!
头文件和错误提示如下:
//base64code.h
#ifndef _base64_code_
#define _base64_code_
extern  CString Base64Encode(CString strToHandle);
extern  void Base64EncodePStr(char *&pDes,char * pSr);
CString Base64Decode(CString strToHandle);
void Base64DecodePStr(char *&pDes,char * pSr);
#endif#ifndef _base64_code_implement_
#define _base64_code_implement_
CString Base64Encode(CString strToHandle)
{
      CString strTemp;
      char *strDes,*strSrc;
      strDes=strSrc=NULL;
      strSrc=strToHandle.GetBufferSetLength(strToHandle.GetLength());
      Base64EncodePStr(strDes,strSrc);
      strTemp.Format("%s",strDes);
      return strTemp;
}
void Base64EncodePStr(char *&pDes,char * pSr)
{……………………………………………………}
CString Base64Decode(CString strToHandle)
{……………………………………………………}
void Base64DecodePStr(char *&pDes,char * pSr)
{……………………………………………………}
#endif
错误提示如下:
//我在把base64code.h包含在MailMessage.h中了,
//并且其他的头函数中也包含了base64code.h
Linking...
SMTP.obj : error LNK2005: "void __cdecl Base64EncodePStr(char * &,char *)" (?Base64EncodePStr@@YAXAAPADPAD@Z) already defined in MailMessage.obj
SMTP.obj : error LNK2005: "void __cdecl Base64EncodePStr(char * &,char *)" (?Base64EncodePStr@@YAXAAPADPAD@Z) already defined in MailMessage.obj
SMTP.obj : error LNK2005: "class CString  __cdecl Base64Decode(class CString)" (?Base64Decode@@YA?AVCString@@V1@@Z) already defined in MailMessage.obj
SMTP.obj : error LNK2005: "void __cdecl Base64DecodePStr(char * &,char *)" (?Base64DecodePStr@@YAXAAPADPAD@Z) already defined in MailMessage.objSMTPView.obj : error LNK2005: "class CString  __cdecl Base64Encode(class CString)" (?Base64Encode@@YA?AVCString@@V1@@Z) already defined in MailMessage.obj
.........
SMTP.exe - 17 error(s), 0 warning(s)

解决方案 »

  1.   

    这是我把实现代码写到base64code.cpp返回的错误:
    c:\documents and settings\administrator\桌面\smtp\base64code.cpp(20) : fatal error C1010: unexpected end of file while looking for precompiled header directive
    //我不知道这是什么意思??
    //谁知道什么原因??
    //请告诉我好吗
    //base64code.cpp
    #ifndef _base64_code_implement_
    #define _base64_code_implement_
    CString Base64Encode(CString strToHandle)
    {
    CString strTemp;
    //……
    return strTemp;
    }
    void Base64EncodePStr(char *&pDes,char * pSr)
    {/*/…………………………………………………………/*/}
    CString Base64Decode(CString strToHandle)
    {
    String strTemp;
    //……
    return strTemp;
    }
    void Base64DecodePStr(char *&pDes,char * pSr)
    {/*/…………………………………………………………/*/}
    #endif