Não tem mistério! Pra exemplificar, cria uma DLL com o seguinte projeto abaixo:
(((INÍCIO DLL))) library StrShortWideLib; uses SysUtils; {$R *.res} function ShortUpperCase(s: ShortString): ShortString; stdcall; begin Result := UpperCase(s) end; function WideUpperCase(s: WideString): WideString; stdcall; begin Result := UpperCase(s) end; exports ShortUpperCase, WideUpperCase; end. (((FINAL DLL))) Depois, cria uma aplicação console que usa as funcões dessa DLL compilada, assim: (((INÍCIO EXEMPLO))) program TstShortWideLib; {$APPTYPE CONSOLE} function ShortUpperCase(s: ShortString): ShortString; stdcall; external 'StrShortWideLib.dll' name 'ShortUpperCase'; function WideUpperCase(s: WideString): WideString; stdcall; external 'StrShortWideLib.dll' name 'WideUpperCase'; begin WriteLn(ShortUpperCase('delphi')); WriteLn(WideUpperCase('rocks')); WriteLn(Eoln); end. (((FINAL EXEMPLO))) Simples assim! Sds. ________________________________ To: delphi-br@yahoogrupos.com.br From: [EMAIL PROTECTED] Date: Thu, 25 Sep 2008 13:22:31 -0400 Subject: Re: [delphi-br] Retorno String em DLL no Delphi Oi João, Wesley e Rubem. Como eu to correndo contra o relógio, mudei tudo pra Pchar agora. Não tinha colocado o sharemem no uses do Aplicativo tbm, acho que foi por isso que não funcionou. Rubem, como seria a alocação desses ShortStrings? Normal mesmo ou tem algum "esqueminha"? Obrigado pelas dicas, pessoal. Sérgio Cavalcante 2008/9/25 Joao Morais <[EMAIL PROTECTED]> > sergio cavalcante wrote: >> Oi João,É conheço bem isso, fui programador C/C++ por 5 anos hehehhe.. >> Só que achei que o Delphi cuidasse de mais coisa pra mim, como ele >> sempre faz :D >> >> Mas valeu, to mudando tudo pra Pchar mesmo. > > Cuidar ele cuida, mas ele não tem controle sobre a dll e daí não existe > mágica. > > No entanto, reli sua mensagem original e parece que você cria a dll no > próprio delphi. Neste caso o sharemem deveria funcionar, mas como o > Wesley falou, você tem que colocá-la no seu projeto também. Manda mais > detalhes do problema que você teve. > > Joao Morais > > > -- Atenciosamente, ------------------------------ Sérgio Cavalcante Mitros Tecnologia _________________________________________________________________ Receba GRÁTIS as mensagens do Messenger no seu celular quando você estiver offline. Conheça o MSN Mobile! http://mobile.live.com/signup/signup2.aspx?lc=pt-br