Path length limit

Sep 14, 2009
2
0
For quite some time, 4NT has been unable to handle EXTREMELY long path names. I know CMD isn't a saint here either, nor is explorer.
However, some tools (e.g. JAR) seem to manage to create path hierarchies that go deeper than the traditional MAX_PATH length, and some tools (eg JAVA) have no trouble handling these paths.
Cleaning up such directories, however, is not possible with 4NT, and I always have to revert to a relatively simple CMD command

echo y | rd /s [longdir]

It would be great if 4NT/TCC could be somewhat enhanced in this area!

Thank you for an outstanding product!
 

rconn

Administrator
Staff member
May 14, 2008
12,340
149
hrensink wrote:

> For quite some time, 4NT has been unable to handle EXTREMELY long path names. I know CMD isn't a saint here either, nor is explorer.
> However, some tools (e.g. JAR) seem to manage to create path hierarchies that go deeper than the traditional MAX_PATH length, and some tools (eg JAVA) have no trouble handling these paths.
> Cleaning up such directories, however, is not possible with 4NT, and I always have to revert to a relatively simple CMD command
>
> echo y | rd /s [longdir]
>
> It would be great if 4NT/TCC could be somewhat enhanced in this area!

The maximum path length in TCC is 4K -- are you creating directory names
longer than that?

Rex Conn
JP Software
 

samintz

Scott Mintz
May 20, 2008
1,501
16
Solon, OH, USA
Have you tried using the extended filename syntax? Most likely, the
culprit is not TCC but the Win32 API.

For example instead of "c:\long\file\name.ext" you would use
"\\.\c:\long\file\name.ext". IIRC, that syntax allows for filenames up
to 32K in length. Again, that is a Win32 issue and not a TCC issue.

-Scott


hrensink <> wrote on 09/15/2009 03:45:31 AM:


> For quite some time, 4NT has been unable to handle EXTREMELY long
> path names. I know CMD isn't a saint here either, nor is explorer.
> However, some tools (e.g. JAR) seem to manage to create path
> hierarchies that go deeper than the traditional MAX_PATH length, and
> some tools (eg JAVA) have no trouble handling these paths.
> Cleaning up such directories, however, is not possible with 4NT, and
> I always have to revert to a relatively simple CMD command
>
> echo y | rd /s [longdir]
>
> It would be great if 4NT/TCC could be somewhat enhanced in this area!
>
> Thank you for an outstanding product!
>
>
>
>
 
Sep 14, 2009
2
0
Hello,

Thank you for your replies.

Yes, I am creating directories, or files - it does not seem to matter
Take this simple example

c:\>for /l I in (1,1,10) (md 1234567890 & cd 1234567890)

never gets me any directories deeper than 250.
Nor do other file or directory creation commands.

Extended filename syntax doesn't work either :

c:\>md \\.\c:\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\1234567890\
TCC: (Sys) The filename, directory name, or volume label syntax is incorrect.

Thanks ...
Herman

Have you tried using the extended filename syntax? Most likely, the
culprit is not TCC but the Win32 API.

For example instead of "c:\long\file\name.ext" you would use
"\\.\c:\long\file\name.ext". IIRC, that syntax allows for filenames up
to 32K in length. Again, that is a Win32 issue and not a TCC issue.

-Scott


hrensink <> wrote on 09/15/2009 03:45:31 AM:
 
Hallo

scrput command doesn't seem to respect spaces. So

echo %@format[22,%_time]

wortks as exspected,

scrput 4 23 bri gre on blu %@format[22,%_time]

does not. Since there doesn't seem to be a "hard space" character like
the old ascii 255, how do I format a variable after scrput?

Herzliche Grüße,

Klaus Meinhard
 
May 20, 2008
3,515
4
Elkridge, MD, USA
K_Meinhard wrote:
| Hallo
|
| scrput command doesn't seem to respect spaces. So
|
| echo %@format[22,%_time]
|
| wortks as exspected,
|
| scrput 4 23 bri gre on blu %@format[22,%_time]
|
| does not. Since there doesn't seem to be a "hard space" character
| like the old ascii 255, how do I format a variable after scrput?

Try two backticks at the end of the line:

scrput 4 23 bri gre on blu %@format[22,%_time]``

--
HTH, Steve
 
Oct 29, 2008
88
0
Yes, I am creating directories, or files - it does not seem to matter
Take this simple example

c:\>for /l I in (1,1,10) (md 1234567890 & cd 1234567890)

never gets me any directories deeper than 250.
Nor do other file or directory creation commands.
This fails for me the third time I run it, leaving me a directory I can't change to, not even using \\.\ syntax (yes I know it's absolute).

Removing it is also problematical; upper levels must be renamed shorter, even for Explorer (Windows 7 Explorer has no problem).

TCC 10.00.76 Windows XP [Version 5.1.2600]
also Windows 7 [Version 6.1.7600]
 
May 20, 2008
603
0
Sammamish, WA
This worked for me:

scrput 4 23 bri gre on blu ``%@format[22,%_time]

On Wed, Sep 23, 2009 at 2:46 AM, K_Meinhard <> wrote:

> Hallo
>
> scrput command doesn't seem to respect spaces. So
>
> *echo %@format[22,%_time]
>
> wortks as exspected,
>
> *scrput 4 23 bri gre on blu %@format[22,%_time]
>
> does not. Since there doesn't seem to be a "hard space" character like
> the old ascii 255, how do I format a variable after scrput?
>
> Herzliche Grüße,
>
> Klaus Meinhard
>
>
>
>
>



--
Jim Cook
2009 Saturdays: 4/4, 6/6, 8/8, 10/10, 12/12 and 5/9, 9/5, 7/11, 11/7.
Next year they're Sunday.
 
Hallo Steve, and all!

Thanx for reminding me of the backtick syntax for scrput.

I have now adapted my calendar batch to work under TCC 11 beta, x86 and
x64 versions. If you're interested you can find it here:

www.4dos.info/btm/isocal.zip

See the built-in help for what it can do.

The DOS version of the calendar can be found here:

www.4dos.info/4xbtm/isocal.zip

which has also the supplemental files if you want to use the reminder
function.

There are differences between 4DOS and TCC 11 that required some
changes. The backtick syntax wasn't necessary in 4DOS, 4DOS v8.00 has an
internal var for the Mofified Julian Date.

I hope someone can use this.

Herzliche Grüße,

Klaus Meinhard
 

Charles Dye

Super Moderator
Staff member
May 20, 2008
4,447
88
Albuquerque, NM
prospero.unm.edu
I have now adapted my calendar batch to work under TCC 11 beta, x86 and x64 versions. If you're interested you can find it here:

www.4dos.info/btm/isocal.zip

Hey Klaus:

I'm curious whether you've tested your batch file with my ISO8601 plugin? It would be interesting to know if they play well together (and might enable your batch to work under released versions of 4NT and TC.)
 
Similar threads
Thread starter Title Forum Replies Date
V Set path permanently from within TCC? Support 3
Jay Sage Command Will Not Run Using Short Name of Path Support 5
Joe Caverly PUSHD with UNC path in CMD.EXE Support 2
MickeyF Why doesn't my python program get executed without specifying its path? Support 2
M How to set Path variable for non-executable file extensions in 4DOS Support 8
D How to? Path problems in TCC20 Support 1
vefatica "COMSPEC path" Support 2
Patulus TCHistoryLog: TCC: (Sys) The system cannot find the path specified Support 15
vefatica If there's no PATH variable ... Support 5
D V19: toolbar /r "path\tctoolbar.ini" Support 1
C ECHOing the _CWD with a & in the path Support 7
David McClelland How to? Path Changes Support 4
gschizas Fixed Cannot use extended path to delete invalid file Support 3
nickles Fixed In batch files, %0 now evaluates to the absolute path Support 9
cgunhouse IFTP Path Issue in V17 - Fixed Support 7
M How to? List path getting short file and directory names... Support 10
M How to? Get both path to and target of symbolic link/junction... Support 2
N Command completion and PATH Support 0
noahcoad How to? Create shortcut with env var in path Support 4
Exolon Space within path and FOR Support 4
A WAD Dir daterange + multiple path wildcards crashes tcc Support 2
D TCC can't start app if @shfolder[42] used for path Support 1
fpefpe How to? Path(s) for Python Support 0
D TPIPE works without being in path, but not V; aemail Support 8
Stefano Piccardi IDE.exe start toobar button fails when % in script path Support 0
H 12.10 UNZIP ignores destination path spec Support 2
Phileosophos unzip not using specified path Support 5
D Extracting the current command line, extracting current path Support 4
Stefano Piccardi char class wildcard issue when [] in path Support 14
D Function to see if a UNC path is mapped? Support 9
williamleara Specifying path to TCMD.INI causes issues Support 8
CWBillow Adding to the path Support 6
D D:\Settings\Application contains an incorrect path? Support 0
M TCC cannot find the path specified Support 4
P Too much path in path Support 12
R FUNCTION to count NUMBER of files matching a pattern and specific length/not length Support 4
S Take Command crashes for aliases with length > 1015 Support 1
D What is the limit on the compound statement length within ( ) of a FOR-loop? Support 5
J How to? max. practical command line length? Support 3
L Fixed console line length in Take Command 19? Support 3
C Maximum length for a variable Support 8
Jay Sage TCMD11: Maximum Description Length Support 1
vefatica What limit have I run into? Support 9
L managing registered computer names: limit = 3 Support 1
T Bogus license limit Support 4
vefatica Is there an 8MB limit somewhere? Support 25
S BDEBUGER: watch list limit? Support 4
S CLIP file size limit Support 1
B 56-line Window Limit? Support 2
S SENDMAIL attachment size limit Support 1

Similar threads