Ir para conteúdo
Fórum Script Brasil
  • 0

Alocação Dinâmica em DLL


RogersM

Pergunta

Olá,

 

Estou criando um fonte para uma dll onde pretendo gerar um array de vários tipos sendo que os tipos serão definidos em tempo de execução.

Pelo que pesquisei terei que usar ponteiro do tipo void. Para cada tipo informado pretendo alocar o espaço de memória para um tipo e armazenar o endereço alocado e o tipo utilizado.

Na função da dll que faz a alocação para o array o programa está abortando, bem no ponto da alocação. Segue o código da função onde acontece o erro (procurei colocar de forma enxuta):

 

iFields = 1;

extern "C" __declspec(dllexport) int Add_Record()
{
    void **pFields;
    int iCont, iRet;

    printf("Antes\n");
    *pFields = malloc(sizeof(void *)* iFields); // alocando as posições para os ponteiros
    printf("Depois\n");

    
    return 0;
}

 

Este mesmo código ao ser inserido na função main, em outro projeto de teste que gera um programa para console, não gera o problema. Segue abaixo


void ** pFields; // variável para apontar para os campos
int iFields = 1;

printf("Antes\n");
*pFields = malloc(sizeof(void *)* iFields); // alocando as posições para os ponteiros
printf("Depois\n");

Existe algum limitação ao trabalhar com a dll ou estou codificando alguma coisa de forma incorreta?

Notas sobre o ambiente de desenvolvimento:

  • Windows 7 - 64 bits
  • Dev C++ (saída do compilador gerando também para 64 bits)

 

 

Agradeço pela atenção dispensada

Link para o comentário
Compartilhar em outros sites

0 respostass a esta questão

Posts Recomendados

Até agora não há respostas para essa pergunta

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...