Link to home
Start Free TrialLog in
Avatar of dht1
dht1

asked on

Batch file

How do you reference the current path?

Reason being, I'm trying to write an autostart CD to launch a browser window. Say, IEXPLORE -k d:\filename.html

However, the letter of the drive is going to vary from PC to PC, so how do I reference the drive letter?

Cheers,
David
Avatar of Longbow
Longbow

If you don't give a drive letter current disk and path will be used.
Sinds autorun will be launched from the CD i think it will be ok.
1st make a test on a partition and create an autorun.inf there. So you may test your application before burning the CD
David, w/o knowing how you're writing your script and not knowing what OS you're working on, it's a little hard to provide many suggestions.

But, based on what you're asking so far, the "Change Directory" (CD) command will give you the exact drive and path that you're working off of.

<e.g.>

typing "CD" on the following drives/paths produces the following:


D:\> CD
produces --  D:\

E:\MyDir> CD
produces --  E:\MyDir

F:\MyDir\Files> CD
produces --  F:\MyDir\Files


If this is not helpful, please provide more info (like an example of your script and your OS).

David,

When you say "reference the current path" do you mean the drive letter
of the users cdrom drive? (And not the path to iexplore.exe?)
As Lonbow notes, you won't need to supply a path if the file being sought
is in the current directory. Using the example you posted would be like:

iexplore -k filename.htm

A backslash preceding a path indicates the root directory,
so if 'filename.htm' is in a directory named Docs on the CD
you could reference it like:

iexplore -k \docs\filename.htm

Note that the working directory is from where the .inf file is run,
so if filename.htm is in the root directory of your CD
then you could also reference it like:

iexplore -k \filename.htm

Hope this makes it work for you... Please post back
if it's not what you meant or if you want more about it...
 
Avatar of dht1

ASKER

The script is simply attempting to open an HTML document with internet explorer.

The problem is that my CD drive may be d:\ but yours might be e:\

The operating system is Windows.

There is a copy of Internet Explorer on the CD.

If I say IEXPLORE -k d:\filename.html it works fine however, may not work on someone else's machine so all I need is some method of replacing the "d:\" part of the command.

For instance $n works fine in a command such as:
prompt $n

However, I can't simply transfer $n to the command I'm trying to use since this literally outputs $n.

Hopefully this makes more sense...????

Cheers,
David
Avatar of dbrunton
You may need a util to get the CDROM drive letter (D: or E:) and then place that in the enviroment.  Say that it stores it in

CDROMENV=D:

for example

Then you could then reference it as

iexplore    -k     %CDROMENV%\filename.html

In your script run the util first and then call the iexplore line.
Avatar of dht1

ASKER

Any idea how I get the CDROM letter?
Avatar of dht1

ASKER

Any idea how I get the CDROM letter?
The following will work on Windows NT but not with 9x.  It creates a environment variable of the current drive (cdrom) and stores it to a var called "CDR".  Then you can simply reference it using %CDR% in the command line.  This won't work under 9x 'cause of the differences in the FOR statement.


for /f %%a in ('CD') do set CDR=%%a

iexplore  -k  %CDR%filename.html



In the above example, if your CD drive was D:\ then CDR will equal D:\
why not test for the existance of the file....

if exist d:\filename.html IEXPLORE -k d:\filename.html
if exist e:\filename.html IEXPLORE -k e:\filename.html

Pat
Avatar of dht1

ASKER

That works great!

However, while testing it, if someone's CD drive is e:\ and d:\ happens to be a floppy or zip drive with no disk in it, it chucks up an error. How can I prevent errors being thrown, or forcing it to fail?
ASKER CERTIFIED SOLUTION
Avatar of rin1010
rin1010

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of dht1

ASKER

Thanks also to PatOBrien