Ir ao conteúdo
  • Cadastre-se

JakLZ

Membros Juniores
  • Total de itens

    1
  • Registro em

  • Última visita

  • Qualificações

    N/D
  1. Ola pessoal, tudo bem, estou começando agora a participar deste fórum, peço desculpas se estou postando no lugar errado...Pergunta: estou convertendo um programa escrito em C, em uma DLL pra poder usar as funções no VB6, mais fiquei preso numa função onde tenho que passar um array para a função e ela me retornaria um valor, mais cada vez que a função da DLL me retorna esse valor, toda vez ele vem diferente, alguém poderia me ajudar.. Função da DLL. EXTERNC __declspec(dllexport) int __stdcall Test(int *dArray); Chamada da Função em C. cArray = getAlocate2D(10, 4); //CHAMADA DA FUNÇÃO DA DLL Max = Test(cArray); printf("Test = %d\n\n", Max); //FUNCIONA CORRETAMENTE // We return the pointer int **getAlocate2D(int N, int M) /* Allocate the array */ { /* Check if allocation succeeded. (check for NULL pointer) */ int i, **table; table = malloc(N*sizeof(int *)); for(i = 0 ; i < N ; i++) table[i] = malloc( M*sizeof(int) ); return table; } Chamada da Função em VB6. Private Declare Function Test Lib "Suport.dll" (ByRef MyArr() As Long) As Long Dim longArray() As Long ReDim longArray(10, 4) 'COMPLETA O ARRAY AQUI COM VALORES 'Call CompleteArray(longArray()) Max = Test(longArray()) Me.Print "Test = " & Max

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×