2 Replies Latest reply: Feb 28, 2012 4:10 PM by biberdorf RSS

    Any plan for Pro*C to tolerate spaces in paths?

    biberdorf
      As of the most recent Pro*C downloaded for use with the Instant Client (11.2.something), it still can't tolerate spaces in any of its inputs.
      Since Visual Studio installs by default into C:\Program Files\Microsoft Visual Studio X\..., there's an immediate problem with specifying "include=C:\Program Files\Microsoft Visual Studio X\VC\Include", whether on the command line or in pcscfg.cfg. Pro*C finds none of the .h files, and the whole process ends.

      This is really complicating our build process, as there's just no good way to construct a generic build script (free of environment variables or a list of possibly conflicting include directories to cover all the bases).

      Does anyone know whether there's any plan for Pro*C to function as an application in the year 2012, rather than 1995, by coping with spaces in these paths?
        • 1. Re: Any plan for Pro*C to tolerate spaces in paths?
          Brian Bontrager
          I can't speak to the Pro*C side of things, but you can find the short name for those paths using "dir /x".
          C:\>dir /x progr*
           Volume in drive C has no label.
           Volume Serial Number is B8EF-DC7A
          
           Directory of C:\
          
          01/25/2012  08:37 AM    <DIR>          PROGRA~1     Program Files
                         0 File(s)              0 bytes
                         1 Dir(s)  62,385,332,224 bytes free
          
          C:\>dir /x "program files\microsoft visual*"
           Volume in drive C has no label.
           Volume Serial Number is B8EF-DC7A
          
           Directory of C:\program files
          
          09/02/2009  07:13 PM    <DIR>          MICROS~3     Microsoft Visual Studio
          05/28/2010  08:07 AM    <DIR>          MID05A~1     Microsoft Visual Studio 8
                         0 File(s)              0 bytes
                         2 Dir(s)  62,385,324,032 bytes free
          
          C:\>
          Using the short names in your path will look something like "include=C:\PROGRA~1\MID05A~1\VC\Include" and meets the "no spaces" requirement.
          • 2. Re: Any plan for Pro*C to tolerate spaces in paths?
            biberdorf
            Yes, but I found no reliable way to capture those short names into a variable. On Windows 7/2008 Server, 8.3 filenames can be disabled on the volume, also, which means they're not available at all. In that event, the entire directory trees would need to be moved to paths without spaces. I'd grumble about the limitations of Windows, but, really, Oracle is the guilty party here. It's 2012, not 1995. Time to tolerate spaces in paths; it's a character like most any other.