Search found 31 matches
- 24 Mar 2013 02:04
- Forum: DOS Batch Forum
- Topic: Help running assemly code I want to wrap in a batch file
- Replies: 3
- Views: 4327
Re: Help running assemly code I want to wrap in a batch file
That book is from 1993 and is undoubtedly teaching you 16-bit assembly, which is effectively worthless. 64-bit Windows cannot run 16-bit executable code. The error message you're getting is almost definitely the opaque ''this is a 16-bit executable'' error message on modern Windows. If your book is ...
- 10 Mar 2013 19:11
- Forum: DOS Batch Forum
- Topic: Remember and Recall Directory Path?
- Replies: 1
- Views: 3238
Re: Remember and Recall Directory Path?
Digging through some old Win9x batch files I have, I adapted a line that MIGHT work for you. echo exit|%COMSPEC% /K prompt CD $P$_|find " " > recall.bat To restore your location, you'd use: call recall.bat What it's actually doing is starting a new instance of command.com, changing the pro...
- 06 Mar 2013 18:13
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
Ok, here's an overly verbose version to play with. test36.bat @setlocal @echo off :: echo on & prompt;::$S$T$_ setlocal enabledelayedexpansion :: path; & dpath; & set pathext=; set ""=^" & set "{=!CMDCMDLINE!" echo [!{:*%~dp0=!] if not "!{:~10,1!"==...
- 05 Mar 2013 22:18
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
The whole point of the code is to check how the batch was started. Only if it was started ''normally'' i.e. via ShellExecute, double-click in Explorer, or via a command that has to be specifically made to look like those, should the " env var be defined. In other cases, like when run via a comm...
- 05 Mar 2013 17:03
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
I hadn't seen that solution, and I'm happy to, because I had early on tried unsuccessfully to redirect a REM. I had read part of that DosTips thread related to it though, about the redirection madness. Keep in mind that the point of this big mess is simply to safely check if the 3rd character of %0 ...
- 05 Mar 2013 04:55
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
The double call is to break up parsing into 3 passes. The first pass is carefully controlled and we precisely know the output: call(%%CMDCMDLINE:**=*%0%%_error_3 Otherwise, during this first pass, if %0 had already been expanded, inserted quotation marks, ampersands, etc. could blow everything up. A...
- 04 Mar 2013 17:26
- Forum: DOS Batch Forum
- Topic: need help with batch file to edit two text files
- Replies: 19
- Views: 16583
Re: need help with batch file to edit two text files
See the line:
Try changing it to:
Notice I removed the space between ! and )
Queue
Code: Select all
) Else ( Echo !Line! )
Try changing it to:
Code: Select all
) Else ( Echo !Line!)
Notice I removed the space between ! and )
Queue
- 04 Mar 2013 16:59
- Forum: DOS Batch Forum
- Topic: build a script via batch
- Replies: 4
- Views: 4721
Re: build a script via batch
I think he's asking for a way to call the ''build_all'' command on the script file (instead of, say, ''open''). autonicknan, if you check what the build_all option is doing, you can call the same command directly via batch. Alternatively, there are some 3rd party utilities that will let you ShellExe...
- 04 Mar 2013 15:16
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
Whew, those are devilish. This isn't a complete solution, but it might be on the right track; if nothing else, it makes things more readable and makes spotting where things are choking easier: test32&if;exists;2.bat @setlocal @echo off :: @prompt;::$S$T$_ setlocal enabledelayedexpansion set &quo...
- 04 Mar 2013 04:21
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
To be fair, the CMDCMDLINE checks would prevent that from being a problem under normal circumstances; I had to make a second batch file that I run via double-click that then calls the original batch file via "&"^&\..\ to get it to explode. I also went further and named it test30^=&...
- 03 Mar 2013 03:52
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
Got it, and now I see what a fluke it was that using " as my env var name was making set ""=%0" work when %0 had enclosing quotation marks. Since putting an & in the name of the .bat file as per your example certainly shows where things break, I've gone with that for testing ...
- 01 Mar 2013 22:30
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
jeb wrote:Now start it withCode: Select all
cat^&dog.bat
It fails with an interesting effect :shock:,
jeb
Ok, that is madness.
Queue
- 01 Mar 2013 15:48
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Re: Question About Quotation Marks
Haha, yeah, I know some of the other special characters make this explode. I'm just confused by the quotation marks though. As a simpler example: set ""="hello jeb"" Why does this work? Why doesn't the first quotation mark pair with the next quotation mark (and break everyth...
- 28 Feb 2013 19:50
- Forum: DOS Batch Forum
- Topic: delims question
- Replies: 8
- Views: 8108
Re: delims question
Can you do delims=(xyz)(abc)? for /f "tokens=2 delims=(jk)(lm)" %a in ("onejktwolmthree") do echo %a for /f "tokens=3 delims=(jk)(lm)" %a in ("onejktwolmthree") do echo %a at the command prompt gaves the results "two" and "three" I'm not su...
- 28 Feb 2013 18:53
- Forum: DOS Batch Forum
- Topic: Question About Quotation Marks
- Replies: 16
- Views: 15159
Question About Quotation Marks
As jeb's answer here: http://www.dostips.com/forum/viewtopic.php?f=3&t=4345 highlighted, quotation marks in env vars often make if statements explode. We wrap each side of the comparison in quotation marks to avoid other problems. So when I was working on something to check if a batch was run vi...