Olá.
Estou utilizando o tutorial disponível em https://tdn.totvs.com/display/tec/ExeDLLRun2 para criação e execução de DLL no Protheus. Está funcionando, porém parcialmente.
Criei um projeto simples de DLL no Visual Studio 2022 e gerei a DLL. A única coisa que a DLL faz é mostrar uma mensagem na tela. Gerei a DLL e executei ela conforme o tutorial.
A mensagem aparece, porém após o término da execução da função da DLL o Protheus cai com erro de sincronismo. Posso colocar quantas mensagens for, elas aparecem, mas na hora de voltar para o Protheus o sistema cai.
Alguém já passou por isso? Ou tem algum pulo do gato?
OBS: Sei que o problema está na DLL, porque se mudo o carregamento para a DLL imageload2.dll (que vem no smartclient), tudo funciona normalmente.
Fonte da DLL: extern "C" __declspec(dllexport) void ExecInClientDLL(int idCommand, char buffParam, char buffOutput, int buffLen) { MessageBox(NULL, "Entrou na função ExecInClientDLL", "Aviso", MB_OK | MB_ICONINFORMATION);
MessageBox(NULL, "Saiu da função ExecInClientDLL", "Aviso", MB_OK | MB_ICONINFORMATION);
return; }
Olá Jonathan, estou com o mesmo problema aqui, você consegiu resolver ? abri chamado na TOTVS mas não conseguiram resolver.
— Cassio Lorenzett 2 months ago