PRB: BINDMSF Error: Cannot Create Binder file \2 (125471)
The information in this article applies to:
- Microsoft FORTRAN PowerStation for MS-DOS 1.0
- Microsoft FORTRAN PowerStation for MS-DOS 1.0a
This article was previously published under Q125471 SYMPTOMS
If you build a program on a network drive without having write privilege
to the root drive, the following error is generated by BINDMSF after
linking:
Fatal error: Cannot create binder temporary file "\2"
The .EXE file created will not run under MS-DOS or Windows.
CAUSE
After linking a FORTRAN PowerStation application, the executable must be
bound by BINDMSF. BINDMSF creates a temporary file in the root of the
directory containing the .EXE file. If this directory is write protected,
the file can't be created, and the executable will not be bound to the
DOS extender.
Another possibility is that the root directory is full or contains the
maximum number of files allowed.
NOTE: This does not apply to FORTRAN PowerStation 32 which does not use
BINDMSF.
RESOLUTION
There are three ways to work around the problem of a write protected drive:
MORE INFORMATION
The Microsoft binder utility BINSMSF attempts to create a temporary file in
the root directory of the drive that contains a project -- or the root
directory of the current directory when using the command line tools like
FL32 to build programs. This file is named '\2'. For example, if your file
server is mapped to drive R:, and you build a program in the
R:\WORK\PROJECT directory, the BINDMSF attempts to create the file named
'\2' in R:\ directory.
If the user does not have the necessary rights in the server root
directory, the binder cannot create the temporary file, and it generates
the message above. These rights include the ability to search for, create,
read from, and write to files. If the user does not have the right to erase
files from the root directory, the binder may be able to successfully open
the file once. However, because the binder cannot delete the file in the
root directory, subsequent attempts to open the temporary file for writing
fail.
To determine the rights a user has in a particular directory, use the
Novell RIGHTS command. To determine what rights a user has in the current
directory, enter the following at the MS-DOS command prompt:
The RIGHTS command generates output similar to this:
SERVER_NAME\SYS:WORK\PROJECT
Your effective rights for this directory are [ RWC ]
May Read from File. (R)
May Write to File. (W)
May Create Subdirectories and Files. (C)
Workaround: Mapping the Directory that Contains the Project
One way to work around insufficient access rights in the root directory
involves mapping the directory that contains the project as the root
directory for the project drive. The Novell MAP ROOT command is provided
for this purpose. For example, to map the WORK\PROJECT directory as the
root of drive R:, enter the following at the MS-DOS command prompt:
MAP ROOT R:=SYS:\WORK\PROJECT
The "SYS:" in the command line represents the volume on the file server on
which the project is installed. Novell volumes are similar to MS-DOS disk
partitions (C:, D:, and so on). To determine the correct volume, examine
the output of the RIGHTS command, as shown above.
After you enter the MAP ROOT command shown above, Novell uses the
WORK\PROJECT directory as the root directory for drive R:. In other words,
when the current directory is R:\, the WORK\PROJECT directory on the SYS:
volume is actually the current directory. As long as the project is opened
in the Visual Workbench from the R: drive, when the binder creates its
temporary file in the root directory of the R: drive, it actually creates
the file in the WORK\PROJECT directory on the SYS: volume. If the user has
the necessary rights in this directory, the file creation and deletion
operations succeed. Because the project directory contains the source code
files, the user should have the right to search for, create, read from,
write two, and erase files in that directory.
You can also define a drive mapping as a root drive by using the Microsoft
Windows File Manager in Microsoft Windows for Workgroups version 3.1. To do
this, the Windows for Workgroups installation must include Novell NetWare
support. To create a drive mapping in File Manager, perform these 11 steps:
- Start the Windows File Manager.
- Connect to a network drive by clicking the network connection button on
the toolbar or by choosing Connect Network Drive from the Disk menu.
- Select the NetWare button in the Connect Network Drive dialog box.
- File Manager displays its Network-Drive Connections dialog box that
lists the current data drive mappings in effect and lists the drive
letters that are available to be mapped. Select the drive letter to use
for the root mapping. Then choose the Browse button.
- File Manager displays its Browse Connections dialog box that lists the
current Novell file servers and volumes available to map to a drive
letter. Choose the appropriate file server/volume connection in the
Servers/Volumes list box. In the previous example, the server/volume
would be SERVER_NAME/SYS:.
- File Manager displays a list of the directories that can be mapped to on
the selected server/volume. Choose the directory that contains the
project. The edit control at the top of the Browse Connections dialog
box displays the full path to the project directory, including the
server/volume. For example, using the previous example, the edit control
displays:
SERVER_NAME/SYS:WORK/PROJECT - Choose OK to close the Browse Connections dialog box. The focus returns
to the Network-Drive Connections dialog box.
- Choose the Map button. File Manager displays the selected server/volume
and directory next to the selected drive letter in the Data drives list
box.
- Choose the Set Root button. File Manager displays a message box asking
for confirmation to assign the root to the current path.
- Choose OK to dismiss the message box.
- Choose Close to dismiss the Network-Drive Connections dialog box.
File Manager maps the drive letter chosen in Step 4 above to the specified
subdirectory on the specified server/volume. NetWare treats the specified
subdirectory as the root directory for that drive letter. To avoid the
situation in which the user has insufficient rights in the root directory,
use this drive letter when you open the project in the Visual Workbench, or
build from the command line.
REFERENCES
For more information on granting rights and mapping drives on a NetWare
network, please refer to your Novell NetWare documentation.
Modification Type: | Major | Last Reviewed: | 10/2/2003 |
---|
Keywords: | KB125471 kbAudDeveloper |
---|
|