Bonjour,
J'ai un programme en visual basic 6.0 qui utilise la fonction FileTreat d'une DLL. Cette fonction transforme un fichier source en un fichier destination.
Voici son écriture
Cette fonction marche très bien. NomFicSrc contient le chemin du fichier source et le fichier de destination est correctement généré.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 Public Function TraiteFichier(ByVal NomFicSrc As String) NomFicDst = App.Path & "\OutFile.txt" Res = FileTreat(ByVal NomFicSrc, ByVal NomFicDst)
Je veux utiliser la même fonction dans un programme Delphi. J'ai écrit :
Cette fonction se lance normalement mais elle renvoie un result indiquant une erreur d'argument. Comme si mes noms de fichiers n'étaient pas vus correctement.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Function FileTreat( Src:PChar; Dst:PChar):Integer; external 'treat.dll'; Function TraiteFichier:Integer; Const SrcName = 'c:\FichierOrg.txt'; DstName = 'c:\FicherDst.txt'; Begin Result:= FileTreat(PChar(SrcName),PChar(DstName)); End;
Est-ce qu'il y a une subtilité dans le passage des paramètres entre VB et Delphi ? En particulier en ce qui concerne les chaines ?
Merci
Partager