KnowledgeBase Archive

An Archive of Early Microsoft KnowledgeBase Articles

View on GitHub

Q29150: Using Full Pathnames to Compile Programs with M or MEP

Article: Q29150
Product(s): See article
Version(s): 1.00   | 1.00
Operating System(s): MS-DOS | OS/2
Keyword(s): ENDUSER | TAR75085 | mspl13_basic
Last Modified: 20-OCT-1988

The full pathname of a file is not transferred to the compiler when an
ARG COMPILE is executed in the Microsoft Editor for MS-DOS and OS/2.
The following is an example:

1. Invoke M.EXE as follows:

M \c5\source\test.c

2. Compile the program with ARG COMPILE. (The default value is
   ALT+A SHIFT+F3). The following line is displayed:

   CL /c /Zep /D LINT_ARGS test.c

   The full pathname is not given.

If you plan on compiling from other directories, you should define
the compile command using the %|F option. The default option %s uses
only the filename. For example, the TOOLS.INI file could be modified
as follows to get the default compile with the full pathname:

extmake:c cl /c /Zep /D LINT_ARGS %|F

You also can select portions of the full pathname, and use the name
more than once, as in the following example:

%d|F - obtains the drive (and colon)
%p|F - obtains the path
%f|F - obtains the filename (no extension)
%e|F - obtains the extension

You can combine the "dpfe" any way you wish, as in the following:

%dpf|F.xyz

This combination produces the drive, path, and filename, with the
extension .XYZ added to the filename.

THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY.

Copyright Microsoft Corporation 1986-2002.