Thread overview
Need extra smarts from the directory handling
Jul 12, 2003
Matthew Wilson
Jul 12, 2003
gf
Jul 12, 2003
Walter
Jul 12, 2003
Matthew Wilson
Jul 13, 2003
Walter
Jul 13, 2003
Matthew Wilson
July 12, 2003
Am issuing the command:

   dmc -I..\..\..\..\include -I"%MSSDK%\include" ..\sslogfix.cpp

and am receiving the response

  Fatal error: unable to open input file 'ShlWApi.h'
  --- errorlevel 1

This is becauses MSSDK (as it installs) is defined as "P:\SDKs\Microsoft SDK\." rather than the more sensible "P:\SDKs\Microsoft SDK", which means that "%MSSDK%\include" expands to "P:\SDKs\Microsoft SDK\.\include".

Alas, DMC++ is the only compiler I have access to that is unable to use
GetFullPathName() (or a similar mechanism) to deduce a canonical version and
operate correctly.

Any chance of a fix for this for 8.35? (For the moment I'm editing MSDDK's
environment settings.)

Matthew


July 12, 2003
"Matthew Wilson" <matthew@stlsoft.org> wrote in news:beoa30$cnn$1@digitaldaemon.com:

> Am issuing the command:
> 
>    dmc -I..\..\..\..\include -I"%MSSDK%\include" ..\sslogfix.cpp
> 
> and am receiving the response
> 
>   Fatal error: unable to open input file 'ShlWApi.h'
>   --- errorlevel 1
> 
> This is becauses MSSDK (as it installs) is defined as "P:\SDKs\Microsoft SDK\." rather than the more sensible "P:\SDKs\Microsoft SDK", which means that "%MSSDK%\include" expands to "P:\SDKs\Microsoft SDK\.\include".

I recall seeing a few posts at Mingw's mailing list from people having the same problem with the '.'!


> Alas, DMC++ is the only compiler I have access to that is unable to
> use GetFullPathName() (or a similar mechanism) to deduce a canonical
> version and operate correctly.
> 
> Any chance of a fix for this for 8.35? (For the moment I'm editing
> MSDDK's environment settings.)
> 
> Matthew


July 12, 2003
Why not just change the -I command to:
    -I"%MSSDK%include"
?

"Matthew Wilson" <matthew@stlsoft.org> wrote in message news:beoa30$cnn$1@digitaldaemon.com...
> Am issuing the command:
>
>    dmc -I..\..\..\..\include -I"%MSSDK%\include" ..\sslogfix.cpp
>
> and am receiving the response
>
>   Fatal error: unable to open input file 'ShlWApi.h'
>   --- errorlevel 1
>
> This is becauses MSSDK (as it installs) is defined as "P:\SDKs\Microsoft SDK\." rather than the more sensible "P:\SDKs\Microsoft SDK", which means that "%MSSDK%\include" expands to "P:\SDKs\Microsoft SDK\.\include".
>
> Alas, DMC++ is the only compiler I have access to that is unable to use
> GetFullPathName() (or a similar mechanism) to deduce a canonical version
and
> operate correctly.
>
> Any chance of a fix for this for 8.35? (For the moment I'm editing MSDDK's
> environment settings.)
>
> Matthew
>
>


July 12, 2003
That would be

 P:\SDKs\Microsoft SDK\.include

!

"Walter" <walter@digitalmars.com> wrote in message news:beq1ej$27ki$1@digitaldaemon.com...
> Why not just change the -I command to:
>     -I"%MSSDK%include"
> ?
>
> "Matthew Wilson" <matthew@stlsoft.org> wrote in message news:beoa30$cnn$1@digitaldaemon.com...
> > Am issuing the command:
> >
> >    dmc -I..\..\..\..\include -I"%MSSDK%\include" ..\sslogfix.cpp
> >
> > and am receiving the response
> >
> >   Fatal error: unable to open input file 'ShlWApi.h'
> >   --- errorlevel 1
> >
> > This is becauses MSSDK (as it installs) is defined as "P:\SDKs\Microsoft SDK\." rather than the more sensible "P:\SDKs\Microsoft SDK", which
means
> > that "%MSSDK%\include" expands to "P:\SDKs\Microsoft SDK\.\include".
> >
> > Alas, DMC++ is the only compiler I have access to that is unable to use
> > GetFullPathName() (or a similar mechanism) to deduce a canonical version
> and
> > operate correctly.
> >
> > Any chance of a fix for this for 8.35? (For the moment I'm editing
MSDDK's
> > environment settings.)
> >
> > Matthew
> >
> >
>
>


July 13, 2003
Sorry, I missed the '.'. Does that mean that any file lookup containing \.\ will fail?

"Matthew Wilson" <matthew@stlsoft.org> wrote in message news:beq2u2$2913$1@digitaldaemon.com...
> That would be
>
>  P:\SDKs\Microsoft SDK\.include
>
> !
>
> "Walter" <walter@digitalmars.com> wrote in message news:beq1ej$27ki$1@digitaldaemon.com...
> > Why not just change the -I command to:
> >     -I"%MSSDK%include"
> > ?
> >
> > "Matthew Wilson" <matthew@stlsoft.org> wrote in message news:beoa30$cnn$1@digitaldaemon.com...
> > > Am issuing the command:
> > >
> > >    dmc -I..\..\..\..\include -I"%MSSDK%\include" ..\sslogfix.cpp
> > >
> > > and am receiving the response
> > >
> > >   Fatal error: unable to open input file 'ShlWApi.h'
> > >   --- errorlevel 1
> > >
> > > This is becauses MSSDK (as it installs) is defined as
"P:\SDKs\Microsoft
> > > SDK\." rather than the more sensible "P:\SDKs\Microsoft SDK", which
> means
> > > that "%MSSDK%\include" expands to "P:\SDKs\Microsoft SDK\.\include".
> > >
> > > Alas, DMC++ is the only compiler I have access to that is unable to
use
> > > GetFullPathName() (or a similar mechanism) to deduce a canonical
version
> > and
> > > operate correctly.
> > >
> > > Any chance of a fix for this for 8.35? (For the moment I'm editing
> MSDDK's
> > > environment settings.)
> > >
> > > Matthew
> > >
> > >
> >
> >
>
>


July 13, 2003
I can't speak for "any", but in this case yes.

I don't know how you're implementing internally, but I know that GetFullPathName() will canonicalise such things

"Walter" <walter@digitalmars.com> wrote in message news:bes9uu$1bo1$1@digitaldaemon.com...
> Sorry, I missed the '.'. Does that mean that any file lookup containing
\.\
> will fail?
>
> "Matthew Wilson" <matthew@stlsoft.org> wrote in message news:beq2u2$2913$1@digitaldaemon.com...
> > That would be
> >
> >  P:\SDKs\Microsoft SDK\.include
> >
> > !
> >
> > "Walter" <walter@digitalmars.com> wrote in message news:beq1ej$27ki$1@digitaldaemon.com...
> > > Why not just change the -I command to:
> > >     -I"%MSSDK%include"
> > > ?
> > >
> > > "Matthew Wilson" <matthew@stlsoft.org> wrote in message news:beoa30$cnn$1@digitaldaemon.com...
> > > > Am issuing the command:
> > > >
> > > >    dmc -I..\..\..\..\include -I"%MSSDK%\include" ..\sslogfix.cpp
> > > >
> > > > and am receiving the response
> > > >
> > > >   Fatal error: unable to open input file 'ShlWApi.h'
> > > >   --- errorlevel 1
> > > >
> > > > This is becauses MSSDK (as it installs) is defined as
> "P:\SDKs\Microsoft
> > > > SDK\." rather than the more sensible "P:\SDKs\Microsoft SDK", which
> > means
> > > > that "%MSSDK%\include" expands to "P:\SDKs\Microsoft SDK\.\include".
> > > >
> > > > Alas, DMC++ is the only compiler I have access to that is unable to
> use
> > > > GetFullPathName() (or a similar mechanism) to deduce a canonical
> version
> > > and
> > > > operate correctly.
> > > >
> > > > Any chance of a fix for this for 8.35? (For the moment I'm editing
> > MSDDK's
> > > > environment settings.)
> > > >
> > > > Matthew
> > > >
> > > >
> > >
> > >
> >
> >
>
>