Jump to content
Fivewin Brasil

Error 1001 - Subc -1, SubSystem, TOleAuto - Rmail


jfaguiar

Recommended Posts

Olá Amigos.

Estou tentando enviar xml por Rmail e funcionou em alguns computadores com Windows 7, mas em um computador está apresentando a mensagem:

Não foi possível envia o e-mail

Error 1001

SubC -1

OSCode 0

SubSystem TOleAuto

Antes havia avisado que a dll Inetcomm.dll não estava no computador. Fiz a copia para a pasta C:\windows\system32 e passou a dar esse erro.

Alguém sabe me dizer o que fazer?

Obrigado.

Link to comment
Share on other sites



FUNCTION Config_Mail(_cUser,cPass,_cRemt,cDest, cCC, cCCO, cTxt, cSubject)

LOCAL lRet := .F., nConta, lExiste, cAlias, oDlg, cMsg, cTexto, oEnviar
LOCAL oCfg, oError, oDlgEnvia, oBrush, oFont, oFnt, oGroup
LOCAL cServPOP3 := aServs[nServ][1] //--> SERVIDOR POP3 - "@servidor.com.br"
LOCAL cServSMTP := aServs[nServ][2] //--> SERVIDOR SMTP - "smtp.servidor.com.br"
LOCAL nPort := aServs[nServ][3]
LOCAL lAut := .T.
LOCAL lSSL := aServs[nServ][4]

PUBLIC NewAnexo, lNewAnexoVemdaNFe, lVoltaVariosEmails, ;
lEnvAutoVariosEmails, lLigaBtnAuto

// Envia o email

IF Empty( cPass ) .OR. ;
Empty( _cRemt ) .OR. ;
( Empty( cDest ) .AND. ;
Empty( cCC ) .AND. ;
Empty( cCCO ) )

MsgStop( OemToAnsi( "Preencha Todos os Campos " )+CRLF+ ;
OemToAnsi( "Verifique o Remetente. " )+CRLF+ ;
OemToAnsi( "Verifique o Destin rio. " ), ;
OemToAnsi( "Aten‡Æo, Falha no Envio. " ) )

RETURN( .F. )

ELSE

/* // era assim - nao e +
cUser := ALLTRIM( _cUser ) + aDomin[nServ]
cRemt := ALLTRIM( _cRemt ) + aDomin[nServ]
*/
cUser := ALLTRIM( _cUser ) + ALLTRIM( cServPOP3 )
cRemt := ALLTRIM( _cRemt ) + ALLTRIM( cServPOP3 )

ENDIF

TRY

oCfg := CREATEOBJECT( "CDO.Configuration" )

WITH OBJECT oCfg:Fields

:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserver" ):Value := cServSMTP // Servidor SMTP
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpserverport" ):Value := nPort
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusing" ):Value := 2 // Remote SMTP = 2, local = 1
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpauthenticate" ):Value := lAut
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpusessl" ):Value := lSSL
:Item( "http://schemas.microsoft.com/cdo/configuration/sendusername" ):Value := cUser
:Item( "http://schemas.microsoft.com/cdo/configuration/sendpassword" ):Value := cPass
// Inlcuido em: 14/01/2014 - nao sei ainda para que serve...
:Item( "http://schemas.microsoft.com/cdo/configuration/smtpconnectiontimeout"):Value := 30

:Update()

END WITH

lRet := .T.

CATCH oError

MsgInfo( "Não Foi Possível Enviar o E-Mail!" +CRLF+ ;
"Verifique o Remetente " +CRLF+ ;
"Verifique o Destinatário " +CRLF+ ;
"Error: " + Transform(oError:GenCode, nil) + ";" +CRLF+ ;
"SubC: " + Transform(oError:SubCode, nil) + ";" +CRLF+ ;
"OSCode: " + Transform(oError:OsCode, nil) + ";" +CRLF+ ;
"SubSystem: " + Transform(oError:SubSystem, nil) + ";" +CRLF+ ;
"Mensajem: " + oError:Description, "Atenção " )

END

//--> FIM DAS CONFIGURACOES.
IF lRet

IF lNewAnexoVemdaNFe // VEM DA NF-E, ENVIAR EMAIL +- LINHA 14192/200

IF LEN( NewAnexo ) >= 1 // ? [TEM ANEXO]

cTexto := cSubject

MsgRun( "Email com Anexo da "+ALLTRIM( cTexto ), ;
"Favor Esperar, Pode Demorar um Pouco - "+ ;
"Tentando Enviar Email - Não Tecle <ESC>", ;
{ || lRet := Envia_Mail(oCfg, cRemt, cDest, cCC, cCCO, cTxt, cSubject) } )

ELSE // ? [NAO TEM AXEXO]

cTexto := cSubject

MsgRun( "Email Sem Anexo da "+ALLTRIM( cTexto ), ;
"Favor Esperar, Pode Demorar um Pouco - "+ ;
"Tentando Enviar Email - Não Tecle <ESC> ", ;
{ || lRet := Envia_Mail(oCfg, cRemt, cDest, cCC, cCCO, cTxt, cSubject) } )

ENDIF

ELSE // VEM DAQUI MESMO: RMAIL.PRG - INICIO

IF LEN( aAttach ) >= 1 // ? [TEM ANEXO]

MsgRun( "Tentando Enviar o Email com Anexo(s) ", ;
"Favor Esperar, Pode Demorar! ", ;
{ || lRet := Envia_Mail(oCfg, cRemt, cDest, cCC, cCCO, cTxt, cSubject) } )

ELSE // ? [NAO TEM AXEXO]

MsgRun( "Tentando Enviar o Email sem Anexo(s) ", ;
"Favor Esperar, Pode Demorar! ", ;
{ || lRet := Envia_Mail(oCfg, cRemt, cDest, cCC, cCCO, cTxt, cSubject) } )

ENDIF

ENDIF

IF lNewAnexoVemdaNFe // VEM DA NF-E, ENVIAR EMAIL +- LINHA 14192/200

//-> Para criar um novo campo em um banco de dados
IF FILE( "EMAILENV.DBF" )

CLOSE EMAILENV
CLOSE SERVIDOR
CLOSE CODIGOS
CLOSE CABGRUPO
CLOSE GRUPOS
CLOSE CONTATOS

USE EMAILENV NEW EXCLUSIVE ALIAS EMAILENV

cAlias := ALIAS()

lExiste := .F.

FOR nConta := 1 TO (cAlias)->(fCount())

IF (cAlias)->(FieldName(nConta)) = "HORAENVIO"

lExiste := .T.

EXIT

ENDIF

NEXT

ENDIF

ArqsDBF() // Criacao e abertura dos DBFS

SELECT EMAILENV // Gravar o Email/Xml enviado

//-> Novo Registro
NewRecord()

IF lRet // Se chegou .T. // mensagem foi enviada

IF .NOT. RecordLock() //-> Trava o registro

// NO PLENOIND E FATURCOD2 E NO PLENOCB E NFECOD2
REPLACE EMAILENV->CODC WITH NFECOD2
REPLACE EMAILENV->CONTATO WITH cSubject+" - Para: "+ ;
ALLTRIM(cDest)
REPLACE EMAILENV->DATAENVIO WITH DATE()
REPLACE EMAILENV->HORAENVIO WITH TIME()

ENDIF

COMMIT
UNLOCK

ELSE // mensagem nao foi enviada com sucesso

IF .NOT. RecordLock() //-> Trava o registro

REPLACE EMAILENV->CODC WITH NFECOD2
REPLACE EMAILENV->CONTATO WITH cSubject+ ;
OemToAnsi( " - NÆo Enviado" ) + ;
" - Para: " + ;
ALLTRIM(cDest) + " - Falha "
REPLACE EMAILENV->DATAENVIO WITH DATE()
REPLACE EMAILENV->HORAENVIO WITH TIME()

ENDIF

COMMIT // vai que...
UNLOCK

MsgInfo( OemToAnsi( "ATEN€ÇO USUµRIO: " )+CRLF+ ;
OemToAnsi( "MENSAGEM DO EMAIL NÇO ENVIADA. " )+CRLF+ ;
OemToAnsi( "OCORREU ALGUMA FALHA AO ENVIAR," )+CRLF+ ;
OemToAnsi( "O SEU ENVIADOR DE EMAIL ESTµ " )+CRLF+ ;
OemToAnsi( "CONFIGURADO CORRETAMENTE? " )+CRLF+ ;
OemToAnsi( "TENTE ENVIAR O EMAIL NOVAMENTE." )+CRLF+ ;
OemToAnsi( "TECLE <ENTER> PARA CONTINUAR..." ), ;
OemToAnsi( "ATEN€ÇO: EMAIL NÇO ENVIADO... " ) )

ENDIF

ENDIF

ENDIF

lVoltaVariosEmails := .T.

// Se Eu Vier do Botao Automatico, Ligar.
IF lLigaBtnAuto
lEnvAutoVariosEmails := .T.
ENDIF

lExiste := .F.

RETURN( lRet )


Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...