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

Criaçao de dlls para se usar no vb6...


cristofermartins

Pergunta

aki o code:

library Project2;

{ Important note about DLL memory management: ShareMem must be the
  first unit in your library's USES clause AND your project's (select
  Project-View Source) USES clause if your DLL exports any procedures or
  functions that pass strings as parameters or function results. This
  applies to all strings passed to and from your DLL--even those that
  are nested in records and classes. ShareMem is the interface unit to
  the BORLNDMM.DLL shared memory manager, which must be deployed along
  with your DLL. To avoid using BORLNDMM.DLL, pass string information
  using PChar or ShortString parameters. }

uses
  SysUtils,
  StrUtils,
  Classes;

{$R *.res}
function MaiorValor(num1, num2:double):double;export;stdcall;
begin
if (num1 > num2) then result:= num1 else result := num2;
end;

exports
MaiorValor;

begin
end.

a minha pergunta é:

tem alguma coisa errada com o code?por que o vb6 sempre da error quando eu tento criar uma dll em delphi ou em c++...

eu vou criar um tópico no board de visual basic linkado nesse para que o pessoal do vb6 ver oque ta de errado com a minha parte do visual basic e vocês verem a parte do delphi...obs:delphi 7...

aki o link do tópico do vb6...

http://scriptbrasil.com.br/forum/index.php?showtopic=139702

obrigado...

Editado por cristofermartins
Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Caro amigo, compilei seu codigo e ele esta complilando normal parece que esta tudo OK.

da erro em que parte?

o erro da no vb6,eu so fiz a pergunta aki porque vai saber se eu declarei certinho para ser chamado pelo vb6 ou qualquer outro erro não visivel para o delphi 7...

Tem que ver a forma em que você está importando a DLL no VB...

tente 2 coisas

primeiro no procedure retire o export deixe apenas o StdCall;

segundo no export antes do begin, coloque um name junto com o nome pra ser exportado

exports
  MaiorValor name 'MaiorValor';
Quanto ao VB não manjo nada, mas tente algo como
Declare Sub MaiorValor Lib "SUADLL.dll" (ByVal num1 As Double, num2 As Double)

abrx

Editado por Churc
Link para o comentário
Compartilhar em outros sites

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,1k
    • Posts
      651,8k
×
×
  • Criar Novo...