Ir para conteúdo
  • Cadastre-se

Erro ao enviar email usando gmail app passwords e provedor que não usa oauth2 (autistici.org)


Ver Solução Respondido por gabr,
  • Este tópico foi criado há 181 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Tentei enviar e-mail usando um código de teste em c++ usando a acbrlibmail console mt no linux usando configuração do gmail com app password setada e tentei também com outro provedor que tenho conta o autistici.org, o qual não usa oauth2 até onde sei, mas ambos falharam.


o gmail retorna o erro:
 

-10

535 5.7.8 https://support.google.com/mail/?p=BadCredentials .... gsmtp

o autistici retorna o erro:
 

-10

SMTP Error: unable to sent MailTo.

545 4.7.1 <destinatario@email.com> Relay access denied.

Eu usei o código mostrado no meu post, marcado como solução.

E detalhe que eu uso ambos as contas diariamente por cliente externo (Emacs).

  • Consultores
Postado

sim é que esses precisa de Auth2

e o componente não faz isso. no caso a lib também não e nem o monitor

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Solution
Postado
4 horas atrás, Juliomar Marchetti disse:

sim é que esses precisa de Auth2

e o componente não faz isso. no caso a lib também não e nem o monitor

Pelo que sei se você usa o gmail com App passwords configurado não precisa de Auth2. E mesmo que precisasse o provedor Autistici que falei certamente não usa Auth2.

Tanto é que consegui mandar pelo gmail (usando senha gerada no app passwords) com o seguinte código c++:
 

#include <iostream>
#include <dlfcn.h>
#include <cstring>
#include <cstdlib>

using std::cout;
using std::cerr;
using std::endl;

typedef int (*MAIL_Inicializar_t)(int **, const char *, const char *);
typedef int (*MAIL_Finalizar_t)(int *);
typedef int (*MAIL_ConfigGravarValor_t)(int *, const char *, const char *, const char *);
typedef int (*MAIL_Clear_t)(int *);
typedef int (*MAIL_SetSubject_t)(int *, const char *);
typedef int (*MAIL_AddAddress_t)(int *, const char *);
typedef int (*MAIL_AddBody_t)(int *, const char *);
typedef int (*MAIL_AddAltBody_t)(int *, const char *);
typedef int (*MAIL_Send_t)(int *, int);

int main()
{

    const char* PATH_DLL     = "/usr/lib/libacbrmail64.so";
    const char* PATH_INI     = "./ACBrLib.INI";
    const char* PATH_LOG     = "./Log";


    void* lib = dlopen(PATH_DLL, RTLD_LAZY);
    if (!lib) {
        cerr << "Erro ao carregar DLL: " << dlerror() << endl;
        return 1;
    }

    MAIL_Inicializar_t MAIL_Inicializar =
        (MAIL_Inicializar_t)dlsym(lib, "MAIL_Inicializar");
    MAIL_Finalizar_t MAIL_Finalizar =
        (MAIL_Finalizar_t)dlsym(lib, "MAIL_Finalizar");
    MAIL_ConfigGravarValor_t MAIL_ConfigGravarValor =
        (MAIL_ConfigGravarValor_t)dlsym(lib, "MAIL_ConfigGravarValor");
    MAIL_Clear_t MAIL_Clear =
        (MAIL_Clear_t)dlsym(lib, "MAIL_Clear");
    MAIL_SetSubject_t MAIL_SetSubject =
        (MAIL_SetSubject_t)dlsym(lib, "MAIL_SetSubject");
    MAIL_AddAddress_t MAIL_AddAddress =
        (MAIL_AddAddress_t)dlsym(lib, "MAIL_AddAddress");
    MAIL_AddBody_t MAIL_AddBody =
        (MAIL_AddBody_t)dlsym(lib, "MAIL_AddBody");
    MAIL_AddAltBody_t MAIL_AddAltBody =
        (MAIL_AddAltBody_t)dlsym(lib, "MAIL_AddAltBody");
    MAIL_Send_t MAIL_Send =
        (MAIL_Send_t)dlsym(lib, "MAIL_Send");

    if (!MAIL_Inicializar || !MAIL_Send) {
        cerr << "Erro ao resolver funções da DLL" << endl;
        dlclose(lib);
        return 1;
    }

    int* handle = nullptr;

    int ret = MAIL_Inicializar(&handle, PATH_INI, "");
    if (ret != 0) {
        cerr << "MAIL_Inicializar erro: " << ret << endl;
        dlclose(lib);
        return 1;
    }

    MAIL_ConfigGravarValor(handle, "Principal", "TipoResposta", "2");
    MAIL_ConfigGravarValor(handle, "Principal", "LogNivel", "4");
    MAIL_ConfigGravarValor(handle, "Principal", "LogPath", PATH_LOG);

    MAIL_ConfigGravarValor(handle, "Email", "Nome", "nome");
    MAIL_ConfigGravarValor(handle, "Email", "Servidor", "smtp.gmail.com");
    MAIL_ConfigGravarValor(handle, "Email", "Conta", "[email protected]");
    MAIL_ConfigGravarValor(handle, "Email", "Usuario", "[email protected]");
    MAIL_ConfigGravarValor(handle, "Email", "Senha", "apppassword");
    MAIL_ConfigGravarValor(handle, "Email", "SSL", "0");
    MAIL_ConfigGravarValor(handle, "Email", "TLS", "1");
    MAIL_ConfigGravarValor(handle, "Email", "Porta", "587");
    MAIL_ConfigGravarValor(handle, "Email", "SSLType", "5");

    MAIL_Clear(handle);
    MAIL_SetSubject(handle, "Teste de email");
    MAIL_AddAddress(handle, "[email protected]");
    MAIL_AddBody(handle, "TESTE DE ENVIO MT C++");
    MAIL_AddAltBody(handle, "TESTE DE ENVIO MT C++ (Alt)");

    ret = MAIL_Send(handle, 1);

    if (ret == 0)
        cout << "Email enviado com sucesso!" << endl;
    else
        cerr << "Erro ao enviar email: " << ret << endl;

    MAIL_Finalizar(handle);
    dlclose(lib);

    cout << "Fim do teste :)" << endl;
    return 0;
}

 

  • Consultores
Postado

então está com dll´s desatualizadas ou erro nos dados da conta no mesmo para envair

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

Postado
Em 18/12/2025 at 12:18, Juliomar Marchetti disse:

então está com dll´s desatualizadas ou erro nos dados da conta no mesmo para envair

Não pode. A lib está na versão 1.1.9 e acabei de criar uma conta nova no gmail, configurei a senha de app e consegui enviar normalmente.

  • Consultores
Postado
Em 21/12/2025 at 00:32, gabr disse:

Não pode. A lib está na versão 1.1.9 e acabei de criar uma conta nova no gmail, configurei a senha de app e consegui enviar normalmente.

com o ACBr?

 

Consultora ACBr Pro

Juliomar Marchetti

Ajude o Projeto ACBr crescer - Seja Pro

discord: juliomar
telegram: juliomar
e-mail: [email protected]
http://www.juliomarmarchetti.com.br

 

MVP_NewLogo_100x100_Transparent-02.png
Projeto ACBr - A maior comunidade Open Source de Automação Comercial do Brasil


Participe de nosso canal no Discord e fique ainda mais próximo da Comunidade !!

  • Este tópico foi criado há 181 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.

The popup will be closed in 10 segundos...