Wednesday, April 18, 2012

WiX - Research analysis of Heat.exe

Following is the research analysis of Heat.exe in WiX toolkit. Purpose of Heat.exe is to create .wxs output file. This analysis is specifically with Directory as well as individual file. Analysis includes command line execution instruction and .wxs file extract.
Presently using a folder “Main Folder” with following structure:
·         Folder – Main Folder
o   Folder – Folder A
§  File – Word Doc AA.docx
o   File – Word Doc A.docx

Directory analysis:

Try 1:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" -out "d:\Main Folder.wxs"

Output:

    
        
            
        
    
    
        
            
                
            
        
    
    
        
            
                
            
        
    
    
        
            
        
    



Try 2:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" -sfrag -out "d:\Main Folder.wxs"

Output:

    
        
            
                
                    
                
                
                    
                        
                    
                
            
        
    



Try 3:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" –sfrag -ag -out "d:\Main Folder.wxs"

Output:

    
        
            
                
                    
                
                
                    
                        
                    
                
            
        
    



Try 4:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" – sfrag –cg cgGrpNm -out "d:\Main Folder.wxs"

Output:

    
        
            
                
                    
                
                
                    
                        
                    
                
            
        
    
    
        
            
            
        
    



Try 5:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" –sfrag –dr ProductName -out "d:\Main Folder.wxs"

Output:

    
        
            
                
                    
                
                
                    
                        
                    
                
            
        
    

Try 6:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" –sfrag –gg -out "d:\Main Folder.wxs"

Output:

    
        
            
                
                    
                
                
                    
                        
                    
                
            
        
    


Try 7:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" –sfrag –template product -out "d:\Main Folder.wxs"

Output:

    
        
        
            
                
                    
                
                
                    
                        
                    
                
            
        
        
        
    



Try 8:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" –sfrag –srd –template product -out "d:\Main Folder.wxs"

Output:

    
        
        
            
                
                    
                
                
                    
                        
                    
                
            
        
        
        
    


Try 9:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" –sfrag –suid –template product -out "d:\Main Folder.wxs"

Output:

    
        
        
            
                
                    
                
                
                    
                        
                    
                
            
        
        
        
    


Try 10:
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" –sfrag –var D: –template product -out "d:\Main Folder.wxs"

Output:

    
        
        
            
                
                    
                
                
                    
                        
                    
                
            
        
        
        
    



Try FINAL: Tried to get the best possible refined .wxs file so that final .wxs file can be generated with very minimal change.
Instruction:
D:\bin>heat.exe dir "d:\Main Folder" -template product -gg -suid -cg Complete -s
frag -ke -var var.MyVar -out "d:\Main Folder.wxs"

Output:

    
        
        
            
                
                    
                
                
                    
                        
                    
                
            
        
        
            
        
        
    
    
        
            
            
        
    



Able to execute Candle successfully
Candle.exe -dMyVar="d:\Main Folder" "d:\Main Folder.wxs" -out "d:\Main Folder.wixobj"

Subsequently created installer Main Folder.msi using Light.exe
Light.exe "d:\Main Folder.wixobj" -out "d:\Main Folder.msi"

1 comment:

  1. Thanks... it saved a lot of my time.

    Mike

    ReplyDelete