News:

MASM32 SDK Description, downloads and other helpful links
MASM32.com New Forum Link
masmforum WebSite

Command line mess.

Started by zcoder, March 31, 2006, 11:12:22 PM

Previous topic - Next topic

zcoder

How can I explain this? ummm

I invoke ml from my program with a command string
and everything works fine, until I use paths like c:\My program\myApp.asm
the assembler says this: can't open c:\My

Thats it, it is not reading the whole path string. is there a fix for this?
I know it has to do with long file names or that MASM does not parse
path names with spaces in the name right, I am not sure.

Zcoder....
Back in 1979, My computer ran so fine.
And there was no such thing,
As a Microsoft Crashed Machine.
http://zcoder.110mb.com
http://www.dietzel.com/partner/idevaffiliate.php?id=345_6  Free Domain Names

Mincho Georgiev

if you eliminate the space between My and program,should be just fine, like My_Program.

zcoder

shaka_zulu,
I am trying to make a IDE that can compile
a project in any folder no matter what the name.

And this just is not good enough, and I can't figure out how to
solve this, if it is possible.

I thank you for the suggestion and all.
but I am sure it can be done as the VC++ IDE invokes CL.exe and can do this
from any folder name.


Zcoder....
Back in 1979, My computer ran so fine.
And there was no such thing,
As a Microsoft Crashed Machine.
http://zcoder.110mb.com
http://www.dietzel.com/partner/idevaffiliate.php?id=345_6  Free Domain Names

hutch--

Z,

You can have a look at later ML versions but the earlier ones don't support file/path names with spaces. You can get around it by building the project in its local folder but make sure that ML and the linker are in a directory that does not have the later style of file/path names with spaces.
Download site for MASM32      New MASM Forum
https://masm32.com          https://masm32.com/board/index.php

jdoe


Why using quoted path is not mention as a solution for this problem.
It seem to work fine for me... with /Fo switch to have the control on where the object file is created.

"c:\My program\myApp.asm"


dsouza123

What about

C:\MYPROG~1\myApp.asm

A directory also has a short name which is usually the first 6 characters with spaces removed
followed by ~ (tilda) and a digit.

From a command prompt

cd \
dir *. /x

lists directories (without an extension following the fname)
if there are embedded spaces or it is longer than 8 chars it shows the short name then long name
if no spaces or <=8 it doesn't show short name then shows long name. (Both names are the same).

Mark Jones

In addition, "short" file paths include the three characters after any period "." i.e.,

"C:\My Documents\Dis Com Foobilator v1.03\foo.rar"   ==    c:\mydocu~1\discom~1.03\foo.rar
"To deny our impulses... foolish; to revel in them, chaos." MCJ 2003.08

P1

Quote from: zcoder on March 31, 2006, 11:12:22 PMI invoke ml from my program with a command string...
Use GetShortPathName, to convert everything to a convention that is compatabile to ML directly.

Regards,  P1  :8)

zcoder

I worked it out using jdoe's idea and it worked.
So this tells me that masm or ml will still parse what
is in " " so that it is complete and un-touched in the parsing.

simple but yet effective.

Thanks jdoe :U

Zcoder....
Back in 1979, My computer ran so fine.
And there was no such thing,
As a Microsoft Crashed Machine.
http://zcoder.110mb.com
http://www.dietzel.com/partner/idevaffiliate.php?id=345_6  Free Domain Names