Denis,
Whenever you see lp in the declaration for a DLL parameter it means long pointer, which is a 32 bit pointer to the parameter which you get by using @ in the call to the function. Pointers are needed whenever the DLL is going to alter the content of the parameter.
>Declare integer SearchTreeForFile In IMAGEHLP.DLL String lpRootPath , String lpInputName, String lpOutputName
>
>sPathBuffer = Space(512)
>
>SearchTreeForFile("C:\", "prova.txt", sPathBuffer )
>
>If i execute the code the sPathBuffer contains a empty value and not a path where the file is find.
>If i use this function in VB it's correct!