|(29 intermediate revisions by 7 users not shown)|
'from one working directory to another .
To change from one working directory to another.
pathname is a string expression of up to 63 characters.
To make sales the working directory on Drive A: and inventory the working directory on Drive B: (assume A: is the default drive), type the following commands:
CHDIR " SALES"
CHDIR " B: INVENTORY"
The CHDIR statement changes the program's location from one working directory to another by specifying a literal or variable STRING path.
- CHDIR path$
- path$ is the new directory path the program will work in.
- path$ can be an absolute path (starting from the root folder) or relative path (starting from the current program location).
- If path$ specifies a non-existing path, a "Path not found" error will occur.
- A QB64 SHELL statement cannot use "CD " or "CHDIR " + path$ to change directories.
Example 1: The following code is Windows-specific:
CHDIR "C:\" 'change to the root drive C (absolute path)
CHDIR "DOCUME~1" 'change to "C:\Documents and Settings" from root drive (relative path)
CHDIR "..\" 'change back to previous folder one up
- Details: QB64 can use long or short (8.3 notation) file and path names.
Example 2: Using the Windows API to find the current program's name and root path. The PATH$ is a shared function value.
_TITLE "My program"
FUNCTION TITLE$ === SHOW CURRENT PROGRAM
SHARED PATH$ 'optional path information shared with main module only
DECLARE LIBRARY 'Directory Information using KERNEL32 provided by Dav
FUNCTION GetModuleFileNameA (BYVAL Module AS LONG, FileName AS STRING, BYVAL nSize AS LONG)
FileName$ = SPACE$(256)
Result = GetModuleFileNameA(0, FileName$, LEN(FileName$)) '0 designates the current program
IF Result THEN 'Result returns the length or bytes of the string information
PATH$ = LEFT$(FileName$, Result)
start = 1
posit = INSTR(start, PATH$, "\")
IF posit THEN last = posit
start = posit + 1
LOOP UNTIL posit = 0
TITLE$ = MID$(PATH$, last + 1)
PATH$ = LEFT$(PATH$, last)
ELSE TITLE$ = "": PATH$ = ""
- Note: The program's _TITLE name may be different from the actual program module's file name returned by Windows.
- Keyword Reference - Alphabetical
- Keyword Reference - By Usage
- Main Wiki Page