Earlier this month I finally updated a project to WiX 3.7.1224.  After I
installed the new version wixproj was no longer recognized in VS2008, so I
also upgraded my project to VS2012.  Everything has been working without
issue under Votive/MSBuild, but today I started working on being able to
patch my project.  The command line tools are executed, but give various
nullreference errors.  

An attempt to uninstall WiX and reinstall has not fixed the problems so
hopefully someone will be able to help.  

I first noticed when following Bob's blog about " Easy pure-WiX patching
with Melt
<http://www.joyofsetup.com/2013/07/16/easy-pure-wix-patching-with-melt/>  "
feature.  Running melt with a command similar to the example:
melt .\product-[oldversion].msi -out .\product-[newversion].wixpdb -pdb
product-[oldversion].wixpdb -x .\product-[oldversion]-[newversion]


Gives me the following stack trace:
melt.exe : error MELT0001 : The specified path, file name, or both are too
long.
The fully qualified file name must be less than 260 characters, and the
directory name must be less than 248 characters.

Exception Type: System.IO.PathTooLongException

Stack Trace:
at System.IO.PathHelper.GetFullPathName()
at System.IO.Path.NormalizePath(String path, Boolean fullCheck, Int32
maxPathLength)
at System.IO.Path.GetFullPathInternal(String path)
at System.IO.FileInfo.Init(String fileName, Boolean checkHost)
at System.IO.FileInfo..ctor(String fileName)
at
Microsoft.Deployment.Compression.ArchiveFileStreamContext.OpenFileWriteStream(String
path, Int64 fileSize, DateTime lastWriteTime)
at
Microsoft.Deployment.Compression.Cab.CabUnpacker.CabExtractCopyFile(NOTIFICATION
notification)
at
Microsoft.Deployment.Compression.Cab.CabUnpacker.CabExtractNotify(NOTIFICATIONTYPE
notificationType, NOTIFICATION notification)
at Microsoft.Deployment.Compression.Cab.NativeMethods.FDI.Copy(Handle hfdi,
String pszCabinet, String pszCabPath, Int32 flags, PFNNOTIFY pfnfdin, IntPtr
pfnfdid, IntPtr pvUser)
at
Microsoft.Deployment.Compression.Cab.CabUnpacker.Unpack(IUnpackStreamContext
streamContext, Predicate`1 fileFilter)
at
Microsoft.Deployment.Compression.Cab.CabEngine.Unpack(IUnpackStreamContext
streamContext, Predicate`1 fileFilter)
at Microsoft.Deployment.Compression.ArchiveInfo.UnpackFileSet(IDictionary`2
fileNames, String destDirectory, EventHandler`1 progressHandler)
at
Microsoft.Deployment.WindowsInstaller.Package.InstallPackage.ExtractFilesOnOneMediaDisk(String
mediaCab, InstallPathMap compressedFileMap,
InstallPathMapuncompressedFileMap)
at
Microsoft.Deployment.WindowsInstaller.Package.InstallPackage.ProcessFilesByMediaDisk(ICollection`1
fileKeys, ProcessFilesOnOneMediaDiskHandler diskHandler
)
at
Microsoft.Deployment.WindowsInstaller.Package.InstallPackage.ExtractFiles(ICollection`1
fileKeys)
at
Microsoft.Deployment.WindowsInstaller.Package.InstallPackage.ExtractFiles()
at Microsoft.Tools.WindowsInstallerXml.Tools.Melt.MeltProduct()
at Microsoft.Tools.WindowsInstallerXml.Tools.Melt.Run(String[] args)

There are no paths that long as far as I can see.  And I thought this was an
issue with melt until I tried using the torch method I'd been using
previously.
torch -p -xi .\product-[oldver].wixpdb .\product-[newver].wixpdb -out
diff.wixmst

And got the error:
torch.exe : error TRCH0001 : Object reference not set to an instance of an
object.

Exception Type: System.NullReferenceException

Stack Trace:
   at
Microsoft.Tools.WindowsInstallerXml.Differ.UpdateTransformSummaryInformationTable(Table
summaryInfoTable, TransformFlags validationFlags)
   at Microsoft.Tools.WindowsInstallerXml.Differ.Diff(Output targetOutput,
Output updatedOutput, TransformFlags validationFlags)
   at Microsoft.Tools.WindowsInstallerXml.Tools.Torch.Run(String[] args)

Unhandled Exception: System.NullReferenceException: Object reference not set
to an instance of an object.
   at
Microsoft.Tools.WindowsInstallerXml.Differ.UpdateTransformSummaryInformationTable(Table
summaryInfoTable, TransformFlags validationFlags)
   at Microsoft.Tools.WindowsInstallerXml.Differ.Diff(Output targetOutput,
Output updatedOutput, TransformFlags validationFlags)
   at Microsoft.Tools.WindowsInstallerXml.Tools.Torch.Run(String[] args)
   at Microsoft.Tools.WindowsInstallerXml.Tools.Torch.Main(String[] args)
Binder temporary directory located at
'C:\Users\...\AppData\Local\Temp\0ceiae1n'.
Unbinder temporary directory located at
'C:\Users\...\AppData\Local\Temp\0ceiae1n'.
Torch temporary directory located at
'C:\Users\...\AppData\Local\Temp\gn1oesgh'.
 
Any direction to what may have gone awry and how to correct it is
appreciated.  

Thanks, 

Randolph



--
View this message in context: 
http://windows-installer-xml-wix-toolset.687559.n2.nabble.com/Problems-using-commandline-tools-after-updating-to-3-7-1224-0-tp7587927.html
Sent from the wix-users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Get 100% visibility into Java/.NET code with AppDynamics Lite!
It's a free troubleshooting tool designed for production.
Get down to code-level detail for bottlenecks, with <2% overhead. 
Download for free and get started troubleshooting in minutes. 
http://pubads.g.doubleclick.net/gampad/clk?id=48897031&iu=/4140/ostg.clktrk
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to