There's a Win32 function called GetVolumeInformation
which returns various flags that describe the file
system that contains the specified directory (case
sensitive, case preserving, etc). I hacked up some
code that I found on CodeProject (to save me the
effort of figuring out the right DllImport syntax).

In my private build I changed FileSet.ScanDirectory to
check file system case-sensitivity, and added a "case
sensitive" parameter to IsPathIncluded. Pretty simple.

--- Scott Hernandez <[EMAIL PROTECTED]> wrote:
> I'm really with Kevin here. It seems like automatic
> detection should
> really be the goal. The behavior should be definable
> from the operating
> system and file system.
> 
> The config file could force a behavior, but I think
> the default behavior
> should be good.
> 
> Kevin, what is your P/Invoke method for detection?
> 
> > -----Original Message-----
> > From: Kevin Dente
> > 
> > >Is it really
> > > that hard to write the paths with the correct
> case?
> > 
> > Well...at the risk of sounding incredibly lazy or
> > anal...yes, it is kind of a pain. I've been
> building
> > NAnt files for a variety of projects and making
> sure
> > that I match case really has been a pain.
> > 
> > On the more philosophical side, I think the tool
> > really should match the semantics of the platform.
> As
> > as Windows user, I'm very accustomed to not having
> to
> > worry about casing in file names. When debugging
> > problems, it's not really something I think about.
> > 
> > And that's really the key thing in my mind - it's
> > another place for potential user error that can be
> > easily eliminated.
> > 
> > As an example of the issue, consider the vb6 task.
> In
> > that task, you specify sources and references that
> are
> > used for dependency checking, but not actually
> used to
> > build the project. If you get the case wrong in
> the
> > build file, there's no real indication of the
> problem
> > - it just won't rebuild the project because it
> doesn't
> > think any of the dependencies have changed. Any
> task
> > that does something similar (uses filesets for
> > dependency checking) will be prone to this error.
> > 
> > BTW, I've already made a first cut at
> automatically
> > determining case-sensitivity of a file system
> through
> > PInvoke. If you're interested in it, I can submit
> it.
> > If you'd rather go with the nant.config setting,
> > that's OK with me too.
> > 
> 
> 
> 
>
-------------------------------------------------------
> This sf.net email is sponsored by: Jabber Inc.
> Don't miss the IM event of the season | Special
> offer for OSDN members! 
> JabConf 2002, Aug. 20-22, Keystone, CO
> http://www.jabberconf.com/osdn
> _______________________________________________
> Nant-developers mailing list
> [EMAIL PROTECTED]
>
https://lists.sourceforge.net/lists/listinfo/nant-developers


__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com


-------------------------------------------------------
This sf.net email is sponsored by: Jabber Inc.
Don't miss the IM event of the season | Special offer for OSDN members! 
JabConf 2002, Aug. 20-22, Keystone, CO http://www.jabberconf.com/osdn
_______________________________________________
Nant-developers mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/nant-developers

Reply via email to