Chapter 4
Using Windows NT Utilities

This feature provides access to the Windows NT command interpreter running on the NUMA-Q 1000 from the VCS Console window running on the Console PC. Commands can be entered in the Console window to perform the following tasks:


Querying the System with the net Command

The net command is accessible from the Windows NT command prompt. It has several options to process all network-related requests. The most relevant options for NUMA-Q 1000 are session, file, share and use.

Windows NT allows several parameters to be used with these options. The computername parameter must be used if the system you are querying is not the current system. For most NUMA-Q 1000 requests, no parameters are needed. Detailed syntax descriptions can be displayed by typing net help option at the command prompt.

The session option can be used to determine if there are any active sessions on the system. Here is an example of the net session command:

C:\>net session

Computer       User name     Client Type      Opens Idle time
-------------------------------------------------------------
\\NUMAQ70                    Windows NT 1381  0     00:04:40
\\W-SRVAUGHN   srvaughn      Windows NT 1877  1     00:03:34
The command completed successfully.

The example shows there are two active sessions on the system. The first one is from the system NUMAQ70. The User name field is empty, indicating it is the same user name as the interactive user. The other session is from the system W-SRVAUGHN. The user name for this session's owner is srvaughn. The Client Type indicates the version of Windows NT being used, along with the Build Numbers. The Opens field shows whether any files are open for that session or not; in this case, it shows that the second session has one open link. The Idle time column indicates how long the sessions have been idle.

The file option displays exact information about the files being opened remotely. Here is an example of the net file command:

C:\>net file

ID     Path                      User name    # Locks
-----------------------------------------------------
3      D:\project\qmi            srvaughn      0
The command completed successfully.

This indicates that the user srvaughn is accessing the directory D:\project\qmi. The # Locks column indicates if any files are locked. For example, a file would be locked if an executable is running remotely.

The shareoption displays the resources that are visible to remote systems. Here is an example of the net share command for the system NUMAQ70:

C:\>net share

Share name   Resource                Remark
----------------------------------------------------
IPC$                                 Remote IPC
C$           C:\                     Default share
D$           D:\                     Default share
ADMIN$       C:\WINNT                Remote Admin
dcom         C:\dcom
The command completed successfully.

A share name ending with a '$' sign indicates it is shared by Windows NT itself, without any user intervention. Each partition is shared by the drive letter, as well as IPC$ and ADMIN$ which are shares used by RPC mechanisms. In the example, only the share dcom is shared explicitly by the system user.

The useoption displays a list of active outbound sessions. Here is an example of the net use command for the system W-SRVAUGHN:

P:\>net use
New connections will not be remembered.

Status       Local Remote                    Network
----------------------------------------------------------------------
OK           K:    \\testsumo\dcom           Microsoft Windows Network
OK           P:    \\blues\users93\srvaughn  Microsoft Windows Network
Disconnected Q:    \\jazz\mainapps           Microsoft Windows Network
Disconnected S:    \\numaq70\1381src         Microsoft Windows Network
Disconnected V:    \\rock\diags.src          Microsoft Windows Network
OK           Y:    \\rock\ntos               Microsoft Windows Network
OK                 \\rock\ntos               Microsoft Windows Network
OK                 \\testsumo\d$\project\qmi Microsoft Windows Network
OK                 \\SITE1\IPC$              Microsoft Windows Network
OK                 \\BUS3\IPC$\spoolss       Microsoft Windows Network
OK                 \\BUS3\IPC$\spoolss       Microsoft Windows Network
The command completed successfully.

This shows the active sessions that were established by W-SRVAUGHN to outside systems. The status field indicates whether the session is still active. The Local field shows the drive letter if the session was connected by mapping a network drive, while the Remote field indicates the UNC for the session. The last field is useful when more than a single network protocol is active; in the present example, only the Windows NT network is being used which is indicated by Microsoft Windows Network.


Using the Shutdown Utility

The shutdown utility is a Win32 Console Application. It performs all actions and interactions with the command shell only; no dialog boxes or message boxes are opened at any time. Further, it is a stand-alone executable without any registry or INI dependencies. No special installation requirements exist for this utility. The syntax of the utility is:

shutdown [/timeout=n] [/force=b] [/message=text] {shutdown|reboot|cancel}

Typing shutdown /? or shutdown -? displays the online help for the shutdown command.

timeout n
indicates the number of seconds for which a dialog box is shown to the interactive user indicating that the system is about to shut down. The text appears in the dialog box. This value must be between 0 and 600. If 0 is specified, the system is shut down immediately.

The default value is 20.

force b
specifies a boolean value, with 0 indicating FALSE and non-zero indicating TRUE. If TRUE, any applications that have unsaved data are closed forcibly, and the data is lost. If FALSE, the interactive user is given a chance to save the work.

The default value is 1.


ATTENTION

If a shutdown is not forced, certain active applications can cancel the shutdown. For example, if a Microsoft Word user has unsaved changes, Word displays a dialog box with "Yes", "No" and "Cancel" buttons. While "Yes" and "No" affect whether the file will be saved or not, the "Cancel" button stops the shutdown sequence.

The /force option is useful in cases where the system is being shut down with coordination from the interactive user. If an application has hung, the interactive user will be prompted by the NT OS to end the non-responding application. If the interactive user selects the "End Now" option on the dialog box shown by NT, the frozen application is forcibly terminated and the shutdown/restart continues.

If the /force option is not used and the interactive user cancels the shutdown, the following call to cancel the shutdown results in a strange message: "Could not Abort System Shutdown, Error: A system shutdown is in progress." This message is due to a bug in Microsoft API provided for cancellation of a shutdown and is harmless. A second shutdown request initiates the shutdown.


text
is the message (within double-quotes) to be displayed in the shutdown dialog box. If no message is specified, a default shutdown message (based on the other options) is displayed.

shutdown
shuts down the system, and waits for either the power to be shut off, or a manual reboot. If another shutdown is attempted while one is already in progress, the utility prints an error message and returns. The previous shutdown sequence continues unchanged.

reboot
shuts down the system, then initiates a reboot.

cancel
cancels a previously issued shutdown command. Any other parameters specified with a cancel are ignored. If no shutdown is in progress when a cancel is issued, an error message is displayed.

All of the options can be shortened to their initial letter. For example, these three commands are equivalent (since the default values are being used):

shutdown /force=1 /timeout=20 reboot
shutdown /f=1 /t=20 r
shutdown r


Isolating a Server from Network Resources

It may be desired to place a Windows NT server in a state so no users can connect to network resources except through the QMI interface. The following assumptions apply:

To isolate the Windows NT server, use the command:

net stop server [/y]
To return the Windows NT server to the normal state, use the command:
net start browser 

In Windows NT, the component responsible for satisfying I/O requests from other systems is called a Server service. The Server service supplies the connections requested by client-side redirections and provides them with access to the resources they request. The Server service itself is composed of two parts:

Running the command net stop server forces the first part, Server, to be unloaded. Srv.Sys is unaffected by the command, but the objective of isolating the system is achieved. This command also stops the Browser service, since the Browser service depends on the Server service to be running. The Browser service is responsible for answering the NetServerEnum query to obtain the current browse list. Using the /y" switch removes the prompt given to the user about stopping the Browser service (and also the warning about any active sessions).

Once the command is completed successfully, the system becomes inaccessible to the other systems on the network; an attempt to connect to any of the shares on this system from remote systems results in an error Network Name not found. If there are any active data transfers, they are aborted. The outbound connections (such as remote shares) are unaffected by this command, so the system can still access remote systems.

For restoring the system's network connection, the command net start Browser is used. This automatically starts the Server service as well, because of the dependency of Browser on Server. Once the command is completed successfully, the system becomes visible to the other systems on the networks as before. The shares are again accessible. A restart of the system or even the Explorer (or other network applications) on the remote system(s) is not needed; a Refresh results in a re-establishment of connections.


ATTENTION

The system is isolated immediately from the network, without any warnings to the connected users. This means that if there are active transfers, they are aborted. If the /y switch is not used, the current user is warned of any active sessions, and this can be used to decide whether to go ahead or not. However, an active session does not indicate whether data is being transferred or not.

The command net stop server also stops any other Server-dependent services that might be running. Using net start browser is not sufficient to restart these other services. To ensure that the system is returned exactly to the state it was in before the isolation, a note should be made of the list of services stopped when the server service is stopped. If other services besides Computer Browser are displayed, they must be restarted as well.