Given that you know the filename already when you create your wxs file, why not 
just replace "[#fileABCClass]" with "ABC.class" in your wxs file rather than 
trying to look it up later on?

If you want to avoid typing the filename all over the place you could use the 
preprocessor to set it once. <$define Filename=ABC.class ?> and then use it 
later on as $(var.Filename).

-----Original Message-----
From: Alain Forget [mailto:afor...@cmu.edu] 
Sent: Wednesday, April 10, 2013 4:08 PM
To: 'Rob Mensching'; 'General discussion for Windows Installer XML toolset.'
Subject: Re: [WiX-users] Referencing filenames (without full path) 
anddirectories in formatted strings

That's what I thought. It's too bad that we can't somehow parse out just the 
filename from the full path (maybe with some regex?), but I guess it's a pretty 
uncommon request that can be bypassed by just setting the file name to a 
Property, and referring to that.


-----Original Message-----
From: Rob Mensching [mailto:r...@robmensching.com]
Sent: April 10, 2013 18:28
To: afor...@cmu.edu; General discussion for Windows Installer XML toolset.
Subject: Re: [WiX-users] Referencing filenames (without full path) 
anddirectories in formatted strings

Oh, sorry, misread question. The answer is there is no way to do that. You 
already know the file's name so there isn't a way to look it up at runtime.


On Wed, Apr 10, 2013 at 2:51 PM, Alain Forget <afor...@cmu.edu> wrote:


        Yes, that I know, but I *don't* want the directory. I only want the 
file's name. For example, say some File element installs a file to 
C:/My/Path/To/File.exe, I'd like some formatted string type thing to return 
just "File.exe".
        

        -----Original Message-----
        From: Rob Mensching [mailto:r...@robmensching.com]
        
        Sent: April 10, 2013 17:27
        To: afor...@cmu.edu; General discussion for Windows Installer XML 
toolset.
        
        Cc: David Watson
        Subject: Re: [WiX-users] Referencing filenames (without full path) 
anddirectories in formatted strings
        
        
        You can use [#ComponentId] to get the directory of the Component 
containing the file. It's all laid out here: 
http://msdn.microsoft.com/en-us/library/windows/desktop/aa368609(v=vs.85).aspx
        
        
        On Wed, Apr 10, 2013 at 11:19 AM, Alain Forget <afor...@cmu.edu> wrote:
        
        
                Yep, confirmed about directories being properties. Thanks...I 
should have noticed it in my installer logs as well. Duh.
        
                I no longer need to get just a filename without its full path, 
but in case I or someone else wants to do this in the future, how
                could it be done?
        
        
        
                -----Original Message-----
                From: David Watson [mailto:dwat...@sdl.com]
                Sent: April 10, 2013 12:55
                To: afor...@cmu.edu; General discussion for Windows Installer 
XML toolset.
                Subject: RE: [WiX-users] Referencing filenames (without full 
path) anddirectories in formatted strings
        
                Indeed, directories are properties.
        
                
http://blogs.msdn.com/b/robmen/archive/2006/10/17/deciphering-the-msi-directo
        
                ry-table-part-7-directories-are-properties.aspx 
<http://blogs.msdn.com/b/robmen/archive/2006/10/17/deciphering-the-msi-directo  
ry-table-part-7-directories-are-properties.aspx>
        


                -----Original Message-----
                From: Alain Forget [mailto:afor...@cmu.edu]
                Sent: 10 April 2013 16:02
                To: 'General discussion for Windows Installer XML toolset.'
                Subject: Re: [WiX-users] Referencing filenames (without full 
path) anddirectories in formatted strings
        
                Thanks for the reply. I thought the syntax "[dirA]" was only 
for properties.
                Does the Directory element also count as (or create) a property?
        
                -----Original Message-----
                From: Rob Mensching [mailto:r...@robmensching.com]
                Sent: April 10, 2013 10:38
                To: General discussion for Windows Installer XML toolset.
                Subject: Re: [WiX-users] Referencing filenames (without full 
path) and directories in formatted strings
        
                What about "[dirA]".  The "[$dirA]" would be trying to get the 
directory of a Component matching that Id, right?
        
                On Mon, Apr 8, 2013 at 4:00 PM, Alain Forget <afor...@cmu.edu> 
wrote:
        
                > Hi all,
                >
                > Say we have the following structure:
                >
                > <Directory Id="dirA" Name="A">
                > <Directory Id="dirB" Name="B">
                > <Directory Id="dirC" Name="C">
                > <Component Id='compABCClass' Guid='MyGuid'> <File 
Id="fileABCClass"
                > Name="ABC.class" DiskId='1'
                > Source="source/path/to/ABC.class" KeyPath='yes' /> 
</Component>
                > </Directory> </Directory> </Directory>
                >
                > Then later on in the .wxs file, in Custom Actions, I want to 
refer to
                > the above file and directory A like so:
                >
                > <!-- Silently run the Java ABC.class file (see
                > http://wix.sourceforge.net/manual-wix3/qtexec.htm ) --> 
<CustomAction
                > Id="Set_cmdRunABC" Property="cmdRunABC "
                > Value="&quot;java&quot; -cp [$dirA] 
&quot;[#fileABCClass]&quot; />
                > <CustomAction Id=" cmdRunABC" Execute="deferred" 
BinaryKey="WixCA"
                > DllEntry="CAQuietExec" Return="check" Impersonate="no" />
                >
                > The problem lies with [$dirA] and [#fileABCClass]:
                >
                > 1) How can I specifically refer to an install directory 
location path
                > (to replace the "[$dirA]"), where no components are being 
installed in
                > that directory (but only in subdirectories, that have 
libraries and
                > stuff that ABC.class needs)?
                > 2) How do I get a file's name *without* the full path (as is 
returned
                > by "[#fileABCClass]")?
                >
                > Thanks, and let me know if anything here isn't clear.
                >
                > Alain
                >
                > ***************************************
                > Alain Forget, Ph.D.
                > Postdoctoral Researcher
                > CyLab, Carnegie Mellon University
                > afor...@cmu.edu
                > http://cups.cs.cmu.edu/~aforget/
                > ***************************************
                >
                >
                >
                >
                > 
----------------------------------------------------------------------
                > -------- Minimize network downtime and maximize team 
effectiveness.
                > Reduce network management and security costs.Learn how to 
hire the
                > most talented Cisco Certified professionals. Visit the 
Employer
                > Resources Portal
                > 
http://www.cisco.com/web/learning/employer_resources/index.html
                > _______________________________________________
                > WiX-users mailing list
                > WiX-users@lists.sourceforge.net
                > https://lists.sourceforge.net/lists/listinfo/wix-users
                >
                >
                
-----------------------------------------------------------------------------
                -
                Precog is a next-generation analytics platform capable of 
advanced analytics on semi-structured data. The platform includes APIs for
                building apps and a phenomenal toolset for data science. 
Developers can use our toolset for easy data analysis & visualization. Get
                a free account!
                http://www2.precog.com/precogplatform/slashdotnewsletter
                _______________________________________________
                WiX-users mailing list
                WiX-users@lists.sourceforge.net
                https://lists.sourceforge.net/lists/listinfo/wix-users
        
        
                
-----------------------------------------------------------------------------
                -
                Precog is a next-generation analytics platform capable of 
advanced analytics on semi-structured data. The platform includes APIs for
                building apps and a phenomenal toolset for data science. 
Developers can use our toolset for easy data analysis & visualization. Get
                a free account!
                http://www2.precog.com/precogplatform/slashdotnewsletter
                _______________________________________________
                WiX-users mailing list
                WiX-users@lists.sourceforge.net
                https://lists.sourceforge.net/lists/listinfo/wix-users
                SDL PLC confidential, all rights reserved.
                If you are not the intended recipient of this mail SDL requests 
and requires that you delete it without acting upon or copying any
                of its contents, and we further request that you advise us.
                SDL PLC is a public limited company registered in England and 
Wales.  Registered number: 02675207.
                Registered address: Globe House, Clivemont Road, Maidenhead, 
Berkshire SL6 7DY, UK.
        
        
                
------------------------------------------------------------------------------
                Precog is a next-generation analytics platform capable of 
advanced
                analytics on semi-structured data. The platform includes APIs 
for building
                apps and a phenomenal toolset for data science. Developers can 
use
                our toolset for easy data analysis & visualization. Get a free 
account!
                http://www2.precog.com/precogplatform/slashdotnewsletter
                _______________________________________________
                WiX-users mailing list
                WiX-users@lists.sourceforge.net
                https://lists.sourceforge.net/lists/listinfo/wix-users
        
        
        
        
        
        
        
------------------------------------------------------------------------------
        Precog is a next-generation analytics platform capable of advanced
        analytics on semi-structured data. The platform includes APIs for 
building
        apps and a phenomenal toolset for data science. Developers can use
        our toolset for easy data analysis & visualization. Get a free account!
        http://www2.precog.com/precogplatform/slashdotnewsletter
        _______________________________________________
        WiX-users mailing list
        WiX-users@lists.sourceforge.net
        https://lists.sourceforge.net/lists/listinfo/wix-users
        
        




------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced analytics on 
semi-structured data. The platform includes APIs for building apps and a 
phenomenal toolset for data science. Developers can use our toolset for easy 
data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to