XFOR: IStream::Stat () devolve E_NOTIMPL em MCIS 2.0

Traduções de Artigos Traduções de Artigos
Artigo: 195046 - Ver produtos para os quais este artigo se aplica.
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Expandir tudo | Reduzir tudo

Sintomas

Quando escreve um receptor de eventos de SMTP para utilização com o Microsoft Commercial Internet System (MCIS) 2.0, pode utilizar a interface IStream::Stat() para repor o tamanho da mensagem. O segmento de código que se segue demonstra este:
HRESULT STDMETHODCALLTYPE CSmtpRules::OnDelivery(IMsg *pMsg)
{
   IStream *pStream;
   HRESULT hr;
   hr = pMsg->GetInterfaceA("Msg Stream", IID_IStream, (IUnknown**)
    &pStream);
   if (SUCCEEDED(hr))
   {
      STATSTG stg;
      if (S_OK == pStream->Stat(&stg, STATFLAG_NONAME))
      {
         sprintf(buffer, "Data size: %d - %d\r\n",
         stg.cbSize.LowPart,
         stg.cbSize.HighPart);
      }
      else
   // report error
}
				

No entanto, a chamada istream::Stat() devolverá E_NOTIMPL.

Causa

Esta interface não foi implementada nas versões do smtpsvc.dll anteriores à versão 1877.11.

Se pretender implementar esta funcionalidade, tem de utilizar esta versão ou posterior e modificar o código para chamar pStream-> Stat(&statStg,STATFLAG_NONAME) e, em seguida, obter as informações tamanho esgotada statStg.cbSize. Este método não pode ser utilizado para obter nomes de ficheiro, à medida que ficheiros são apenas criados depois das PIAs denominam-se. Depois de utilizar pStream, tem de chamar pStream-> (versão) ou a mensagem ficará na fila depois de entrega.

Resolução

Para resolver este problema, obtenha o service pack mais recente do Windows NT 4.0 ou a actualização de software individual. Para obter informações sobre como obter o service pack mais recente, vá para:
  • 152734como obter o service pack mais recente do windows nt 4.0
Para obter informações sobre como obter a actualização de software individual, contacte o suporte técnico da Microsoft. Para obter uma lista completa dos números de telefone do suporte técnico da Microsoft e informações sobre os custos de suporte, visite o seguinte endereço na World Wide Web:
http://support.microsoft.com/default.aspx?scid=fh;EN-US;CNTACTMS

Ponto Da Situação

A Microsoft confirmou que este é um problema no Microsoft Commercial Internet System versão 2.0.

Propriedades

Artigo: 195046 - Última revisão: 10 de fevereiro de 2014 - Revisão: 1.6
A informação contida neste artigo aplica-se a:
  • Microsoft Commercial Internet System 2.0
Palavras-chave: 
kbnosurvey kbarchive kbmt kbbug kbfix kbqfe KB195046 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 195046

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com