Problemas com Funções Externas

Delphi

01/07/2005

Olá Pessoal....

estou enfrentando um problema no mínimo estranho ao trabalhar com funções externas no Delphi. Criei o Seguinte código:

  strAux        := ´´;
  strTemporaria := StrPas(strConteudo);

  intPosicao := 1;
  AssignFile(txtArqTxt, ´c:\log.txt´);
  Rewrite(txtArqTxt);
  While intPosicao < Length(strTemporaria) Do
  Begin
    Writeln(txtArqTxt, ´While: IntPosicao=´ + IntToStr(intPosicao));
    strAux := strAux + ´_´;
    For intCount := 0 To intStep - 1 Do
    Begin
      Writeln(txtArqTxt, ´For: intCount=´ + IntToStr(intCount));
      Writeln(txtArqTxt, ´Letra=´ + strTemporaria[intPosicao + intCount]);
      strAux := strAux + strTemporaria[intPosicao + intCount];
    End;
    strAux := strAux + ´*´;
    Inc(intPosicao, intStep);
  End;
  Writeln(txtArqTxt, ´Result = ´ + strAux);
  CloseFile(txtArqTxt);
  Result := PChar(strAux);


Bom, quando eu chamo essa função dentro de um programa ela funciona perfeitamente. Porém, quando ela está em uma DLL, e eu uso em como uma função externa no Interbase (6.0) ela não me retorna o desejado.

Ex: se eu passo fTransform(´12341234´, 4) no sistema ele retorna: _1234*_1234*. Mas se passo no interbase retorna: _123412341234123412341234. A informação que tenho no meu campo é exatamente a que eu passo no Sistema.

O mais gozado é que o Log gravado ao executar pelo interbase é apenas Result=.... :shock: :?

Obrigado desde já pela Ajuda

Marcos


Marvinla

Marvinla

Curtidas 0
POSTAR