Hello Perl monks

I need help with the Win32::GetShortPathName. On one problem machine, the function does not always return a short (8.3) path name. The machine is Windows 2000 running ActiveState 5.6.1 build 635.

My test code is:

#-- test perl program to determine set up use strict; use warnings; print "\n\nTest program to determine OS/File paths as seen by Perl \n\ +n"; #-- get the OS variable print "\nOperating system as returned by \$^O variable is:\t $^O\n"; #-- list of directories my @files = ( 'C:\program files\merant build', 'C:\PROGRA~1\merant build' ); foreach my $file ( @files ) { print "Long Path:\t$file\nShortPath:\t" . Win32::GetShortPathName($file) . "\n\n"; }
The result of the test is:

Test program to determine OS/File paths as seen by Perl Operating system as returned by $^O variable is: MSWin32 Long Path: C:\program files\merant build ShortPath: C:\PROGRA~1\merant build Long Path: C:\PROGRA~1\merant build ShortPath: C:\PROGRA~1\merant build
I was expecting "C:\PROGRA~1\MERANT~1" in both cases. On other machines with the same directory structure, "C:\PROGRA~1\MERANT~1" is returned. Is there anywhere I should look on the machine itself (a system dll?) to see why this may be occurring? Thanks in advance.

In reply to Win32::GetShortPath doesn't always return an 8.3 short Path? by jimbojones

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.