⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 wdbgrem.gml

📁 开放源码的编译器open watcom 1.6.0版的源代码
💻 GML
📖 第 1 页 / 共 3 页
字号:
.note PLS
One or more of "RUN386.EXE" (or "TNT.EXE"), "DBGLIB.REX",
"PLSHELP.EXP", and "PEDHELP.EXP" must be located in one of the
directories listed in the DOS
.ev PATH
environment variable.
See the section entitled :HDREF refid='vidpls'. for more information on
debugging applications that use the Phar Lap DOS extender.
.*
.endnote
.*
.section *refid=remnmp NMP (Named Pipes)
.*
.ix 'Named Pipes' 'remote debugging'
.ix 'remote debugging' 'with Named Pipes'
.np
The named pipes link allows you to communicate between any two
sessions on an OS/2 machine. You can also debug remotely between DOS,
Windows 3.x and OS/2 machines if you have installed remote named pipe
support on these machines. See your network documentation for details
on remote named pipes.
.np
In order to use named pipes, you must first run the NMPBIND program.
This may run any OS/2 machine on the network. It can be run detached,
by putting the following line into your OS/2 CONFIG.SYS.
.millust begin
RUN=C:&pathnamup.\BINP\NMPBIND.EXE
.millust end
.np
If you run NMPSERVW under Win-OS/2, it must be run as a seamless
Windows session. This is due to the fact that full screen Win-OS/2
sessions may not get any processor time when they are not in the
foreground.
.np
The parameter to this link can take the following forms:
.millust begin
name
name@machine
.millust end
.np
.id name
is an arbitrary name to be used for the connection. This allows you to
have multiple remote debug sessions active simultaneously. The default
name is NMPLink.
.np
.id machine
is the name of the machine on which the NMPBIND program is running.
This allows you to use remote named pipes.
.np
The following example shows you how to use the named pipe link between
two sessions on the same OS/2 machine.
.millust begin
A>nmpserv
B>&dbgcmd. /tr=nmp app
.millust end
.np
The following example assumes that there is a machine named HAL with a
remote named pipe server on the network which is running NMPBIND.
.millust begin
A>nmpserv mylink@hal
B>&dbgcmd. /tr=nmp;mylink@hal app
.millust end
.*
.section *refid=remvdm VDM (Virtual DOS Machine)
.*
.ix 'OS/2' 'remote debugging'
.ix 'remote debugging' 'with OS/2'
.ix 'Windows NT' 'remote debugging'
.ix 'remote debugging' 'with Windows NT'
.np
VDM is actually a limited version of named pipes that does not require
the NMPBIND program to be running.
It has several restrictions however.
.autopoint
.point
It does not support network debugging.
.point
Under OS/2, the debugger (user interface) must run in an OS/2 (not a
DOS) session.
The debugger may also be started under Windows NT but not Windows 95
since it does not support named pipes.
.point
Under OS/2, the remote debug server must run in a seamless Win-OS/2 or
a DOS session.
.point
Under Windows NT, the remote debug server will be run in a Windows NT
Virtual DOS Machine.
.point
Under Windows 95, the remote debug server can be started but since
Windows 95 does not support named pipes it will not work properly.
See the section entitled :HDREF refid='remwin'. for an alternative.
.point
If you are running VDMSERVW under Win-OS/2, it must be run as a
seamless Windows session.
This is due to the fact that full screen Win-OS/2 sessions may not get
any processor time when they are not in the foreground.
.endpoint
.np
The parameter to this link is an arbitrary name to be used for the
connection. This allows you to have multiple VDM debug sessions active
simultaneously.
The default name is VDMLink.
The following example shows how to use the VDM link:
.millust begin
A>vdmserv
B>&dbgcmd. /tr=vdm app
.millust end
.np
The following example shows how to use the VDM link specifying "brian"
as the link name.
.millust begin
A>vdmserv brian
B>&dbgcmd. /tr=vdm;brian app
.millust end
.*
.section *refid=remtcp TCP/IP (Internet Packets)
.*
.ix 'TCP/IP' 'remote debugging'
.ix 'remote debugging' 'with TCP/IP'
.ix 'Internet Protocol' 'remote debugging'
.ix 'remote debugging' 'with Internet Protocol'
.np
The TCP/IP link allows you to communicate between any two sessions
using TCP/IP if you have installed TCP/IP support.
You can also debug remotely between OS/2 and Windows NT/95 machines
if you have installed TCP/IP support on these machines.
See your network documentation for details on installing TCP/IP
support.

To use TCP/IP support under DOS, you need to configure the WATTCP
client and install a packet driver for your network card.
.np
.ix 'TCPSERV'
In order to use TCP/IP to remotely debug a program, you must start the
TCPSERV server program first.
.exam begin
A>tcpserv
Socket port number: 3563
&company TCP/IP Debug Server Version &ver..&rev
&cpyrit 1988
Press 'q' to exit
.exam end
.pc
.ix 'socket port number'
The server program displays an available socket port number on the
screen.
.np
.ix 'TCP/IP services'
You may specify a TCP/IP "service" as an argument on the command line.
TCPSERV will check the TCP/IP services list to find a matching
service.
.ix 'tcplink service name'
.ix 'service name' 'tcplink'
If no argument is specified on the command line, TCPSERV uses
"tcplink" as the service name.
If no matching service name is found, TCPSERV attempts to convert the
argument to a numeric port number and use that.
.ix 'TCP/IP socket'
.ix 'socket port number' 'default'
If the argument can not be converted to a number, port number 3563 is
used.
.np
The TCP/IP services list is stored in different places depending on
the operating system.
.begnote
.note OS/2
.mono d:\TCPIP\ETC\SERVICES
depending on the drive where TCP/IP is installed
.note Linux and QNX
.mono /etc/services
.note Windows 9x
.mono d:\windows\SERVICES
depending on the drive and directory where Windows 95 is installed
.note Windows NT
.mono d:\WINNT\SYSTEM32\DRIVERS\ETC\SERVICES
depending on the drive where Windows NT is installed
.endnote
.np
.ix 'IP address'
You will also need to know the Internet Protocol (IP) address of the
machine running the TCPSERV program.
This can be in alphanumeric or numeric form
(e.g., jdoe.watcom.on.ca or 172.31.0.99).
With the alphanumeric form, it is not necessary to specify the domain
name portion if the two machines are in the same domain.
.np
To use the remote TCP/IP server, you must specify the TCP/IP trap file
name to the debugger along with an argument consisting of
your IP address, optionally followed by a ":" and the service name or
socket port number used by TCPSERV.
You must also include the name of the application you wish to run and
debug on the remote machine.
.exam begin 4 1
A>tcpserv
B>&dbgcmd. /tr=tcp;jdoe app
        or
B>&dbgcmd. /tr=tcp;172.31.0.99 app
.exam end
.exam begin 4 2
A>tcpserv 1024
B>&dbgcmd. /tr=tcp;jdoe:1024 app
        or
B>&dbgcmd. /tr=tcp;jdoe.watcom.on.ca:1024 app
        or
B>&dbgcmd. /tr=tcp;172.31.0.99:1024 app
.exam end
.exam begin 4 3
A>tcpserv dbgservice
B>&dbgcmd. /tr=tcp;jdoe:dbgservice app
        or
B>&dbgcmd. /tr=tcp;jdoe.watcom.on.ca:dbgservice app
        or
B>&dbgcmd. /tr=tcp;172.31.0.99:dbgservice app
.exam end
.np
.ix 'Internet'
The TCP/IP remote debug service permits debugging of applications
anywhere on the Internet.
However, response will vary with the distances involved.
.*
.* The &company Debugger travels the information superhighway.
.*
.endlevel
.*
.section *refid=rfxfile Specifying Files on Remote and Local Machines
.*
.np
In order to identify files on either the local or remote machine, two
special prefixes are supported.
.begnote
.mnote @L
.ix 'local file specifier prefix' '@L'
.ix '@L'
The "@L" prefix is used to indicate that the file resides on the local
machine (the one on which the debugger is running).
.millust begin
@L[d:][path]filename[.ext]
.millust end
.pc
When "[path]" is not specified, the current directory of the specified
drive of the local machine is assumed.
When "[d:]" is not specified, the current drive of the local machine is
assumed.
.exam begin
@LOUTPUT.LOG
@LD:\CMDS
@LD:\CMDS\DATA.TMP
.exam end
.mnote @R
.ix 'remote file specifier prefix' '@R'
.ix '@R'
The "@R" prefix is used to indicate that the file resides on the remote
machine.
.millust begin
@R[d:][path]filename[.ext]
.millust end
.pc
When "[path]" is not specified, the current directory of the specified
drive of the remote machine is assumed.
When "[d:]" is not specified, the current drive of the remote machine is
assumed.
.exam begin
@RMYAPPL.DAT
@RD:\PROGRAMS\EXE\MYAPPL.LNK
@R\PROGRAMS\SRC
@R\PROGRAMS\SRC\UILIB.C
.exam end
.endnote
.pc
Thus a file may be identified in three different ways.
.millust begin
[d:][path]filename[.ext]
@L[d:][path]filename[.ext]
@R[d:][path]filename[.ext]
.millust end
.pc
A file of the first form resides on either the local or remote machine
depending on whether the current drive is a local or remote drive.
A file of the second form always resides on the local machine.
A file of the third form always resides on the remote machine.
.autonote Notes:
.note
In the each form, the omission of "[d:]" indicates the current drive.
.millust begin
[path]filename[.ext]
@L[path]filename[.ext]
@R[path]filename[.ext]
.millust end
.note
In the each form, the omission of "[path]" indicates the current path
of the specified drive.
.millust begin
[d:]filename[.ext]
@L[d:]filename[.ext]
@R[d:]filename[.ext]
.millust end
.pc
Observe that if "[d:]" is omitted also then the following forms are
obtained:
.millust begin
filename[.ext]
@Lfilename[.ext]
@Rfilename[.ext]
.millust end
.note
The special drive prefixes "@L" and "@R" cannot be used in your own
application to reference files on two different machines.
These prefixes are recognized by the &dbgname only.
Should the situation arise where one of your filenames begins with the
same prefix ("@L", "@l", "@R" or "@r") then "@@" can be used.
For example, if your wish to refer to the file on disk called "@link@"
then you could specify "@@link@".
Note that ".\@link@" would also suffice.
.endnote

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -