/* GetFile.p dps 02/23/07 */ DEF VAR vInFile AS CHAR NO-UNDO. DEF VAR vOk AS LOGICAL NO-UNDO. DEF BUTTON btnFile SIZE 10 BY 1 LABEL "File". DEF FRAME inp vInFile COLON 16 FORMAT "x(128)" VIEW-AS FILL-IN SIZE 40 BY 1 LABEL "Input Path\File" btnFile WITH THREE-D CENTERED SIDE-LABELS. PROCEDURE SHBrowseForFolder EXTERNAL "shell32.dll": DEFINE INPUT PARAMETER mPoint AS MEMPTR. DEFINE RETURN PARAMETER lRet AS LONG. END PROCEDURE. PROCEDURE SHGetPathFromIDList EXTERNAL "shell32.dll": DEFINE INPUT PARAMETER mPoint AS LONG. DEFINE INPUT-OUTPUT PARAMETER cVar AS CHARACTER. DEFINE RETURN PARAMETER lRet AS LONG. END PROCEDURE. ON CHOOSE OF btnFile IN FRAME inp DO: SYSTEM-DIALOG GET-FILE vInFile TITLE "Select Input File" FILTERS "All Files (*.*)" "*.*" INITIAL-FILTER 1 MUST-EXIST UPDATE vOk. IF NOT vOk THEN UNDO, RETRY. DISPLAY vInFile WITH FRAME inp. END. UPDATE vInFile btnFile WITH FRAME inp. /* end of program */