동일한 상자에 SMTP 서버 (IIS)를 제공하려는 전자 메일을 만듭니다 (OS는 2003 Server 32 비트). 나는 이것을 "cdSendUsingPickup"메소드를 사용하여 보냅니다.CDO의 메시지 크기 제한?
내 IMessage 인터페이스를 사용하여 메시지를 서버 pickup 디렉토리에 복사합니다. 내 메시지가 ~ 150MB 미만이면 모든 작품이 훌륭합니다. 크기는 메일 첨부 파일에 의해 계산됩니다. 그러나이 제한을 초과하는 첨부 파일을 포함하면 IMessage :: GetStream()이 0x8007000e와 함께 실패합니다. 저장소 공간이 부족하여이 작업을 완료 할 수 없습니다. 서버에는 충분한 HD 공간이 있습니다. 나는 어떤 종류의 공간 제한에 부딪 히고있다. 그리고 나는 그것이 더 많은 메모리 제한이 아니라, HD 공간 문제가 아니라고 생각하고있다. 그러나 나는 무슨 일이 진행되고 있는지에 대한 단서를 찾지 못하고있다. 아래의 의사 코드 - GetStream에 대한 호출이 150MB보다 큰 메시지로 실패합니다. 더 작은 메시지에서도 잘 작동합니다.
DlvrMsg(IMessage piMsg)
{
_StreamPtr pStream = NULL;
HRESULT hr = piMsg->GetStream(&pStream);
pStream->put_type(adTypeBinary);
//.. then use pStream->Read() to read the bytes of the message
// and copy to an .eml file in the pickup directory.
...
}
사용자가 150MB + 전자 메일을 열어 볼 것으로 기대합니까? 전자 메일을 자동 전송으로 사용하려고합니까? – Lankymart
그 고객이 원했던 것. –