BCX Console Demonstration Program s105.bas
|
DIM Arg$
DIM F$
Arg$ = COMMAND$
IF Arg$ = "" THEN
COLOR 7, 0
CLS
PRINT "-----------------------------------------------------------------"
COLOR 2, 0
PRINT "PickFile 1.0 by Kevin Diggins ( 32 bit Freeware ) For Win95/98/NT"
COLOR 7, 0
PRINT "-----------------------------------------------------------------"
PRINT "PickFile provides commandline users with a Windows File Dialog"
PRINT "from which to choose and then pass on the selected filename to "
PRINT "the program specified on the command line by the user."
PRINT "-----------------------------------------------------------------"
COLOR 2, 0
PRINT "For Example: PickFile C:\Windows\Command\EDIT"
COLOR 7, 0
PRINT "takes the file chosen from the Windows File Dialog and then"
PRINT "passes it to EDIT, which is a simple MSDOS text editor."
PRINT "-----------------------------------------------------------------"
END
END IF
F$ = "*.*"
OpenFileDialog(0, "PickFile v1.0 by Kevin Diggins", F$, "", "All", "*.*", 0)
IF F$ <> "*.*" THEN
Arg$ = Arg$ & " " & F$
SHELL Arg$
END IF
FUNCTION OpenFileDialog _
( _
hWnd AS HWND , _
zCaption$ , _
zFilespec$ , _
zInitialDir$ , _
zFilter$ , _
zDefExtension$ , _
Flags _
)
LOCAL ofn AS OPENFILENAME
LOCAL File$
LOCAL FileTitle$
LOCAL Filter$
LOCAL InitialDir$
LOCAL Title$
LOCAL DefExt$
LOCAL RetFlg
IF LEN(zInitialDir$) = 0 THEN
InitialDir$ = CURDIR$
END IF
Filter$ = zFilter$
InitialDir$ = zInitialDir$
File$ = zFilespec$
DefExt$ = zDefExtension$
Title$ = zCaption$
ofn.lStructSize = SIZEOF(ofn)
ofn.hwndOwner = hWnd
ofn.lpstrFilter = Filter$
ofn.nFilterIndex = 1
ofn.lpstrFile = File$
ofn.nMaxFile = SIZEOF(File$)
ofn.lpstrFileTitle = FileTitle$
ofn.nMaxFileTitle = SIZEOF(FileTitle$)
ofn.lpstrInitialDir = InitialDir$
ofn.Flags = Flags
ofn.lpstrDefExt = DefExt$
IF LEN(Title$) > 0 THEN
ofn.lpstrTitle = Title$
END IF
RetFlg = GetOpenFileName(&ofn)
zFilespec$ = File$
Flags = ofn.Flags
FUNCTION = RetFlg
END FUNCTION