From: <rkj...@ya...> - 2008-02-29 15:01:22
|
Hi Bill, Just tried your idea and unfortunately, it made no difference. It's still giving me the exact same error. Regards, K. ----- Original Message ---- From: "Wil...@av..." <Wil...@av...> To: rkj...@ya...; nan...@li... Sent: Friday, 29 February, 2008 1:52:48 PM Subject: RE: [NAnt-users] msi task - 'cabarc' failed to start Have you adding it to the Path environment on the machine? I’m not sure, but I believe nant starts a new process to run cabarc, and this would presumably get the default Path from the machine settings, not from your current process, and so wouldn’t include the value you have just set. Just a thought. Cheers, Bill From: nan...@li... [mailto:nan...@li...] On Behalf Of rkj...@ya... Sent: 29 February 2008 13:08 To: nan...@li... Subject: [NAnt-users] msi task - 'cabarc' failed to start Hi all, I'm new to NAnt and I'm trying to set up our project for automated builds but am having no success. I'm currently trying to use the msi task to build the msi for our project but it keeps failing with the following message: [msi] Compressing Files... [exec] Starting 'cabarc (-r N C:\code\PROJECT~3\trunk\builds\lat est\Project.cab *)' in 'C:\Documents and Settings\user\Local Settings\Temp\tm p177B.tmp' Failure: BUILD FAILED C:\code\Project-SVN\trunk\default.build(317,6): Unable to build Installer database 'Deploy\Project.msi'. C:\code\Project-SVN\trunk\default.build(317,6): Error creating cab file. 'cabarc' failed to start. The system cannot find the file specified I've added cabarc and mergemodule to the path using the following code: <!-- Retrieve the path to visual studio from the registry --> <readregistry property="visualstudio.dir" key="SOFTWARE\Microsoft\VisualStudio\8.0\InstallDir" hive="LocalMachine" /> <echo>Visual Studio path: ${visualstudio.dir}</echo> <property name="cabarc.dir" value="${string::replace(visualstudio.dir, 'IDE\', 'Tools\Bin\CabArc.exe')}"/> <property name="mergemod.dir" value="C:\Program Files\Common Files\Microsoft Shared\MSI Tools\mergemod.dll"/> <setenv name="PATH" path ="${cabarc.dir};${mergemod.dir};%PATH%"/> <echo>Path: ${environment::get-variable('PATH')}</echo> The echo task shows the paths to cabarc and mergemod have been added to the Path environment variable so it should be able to find them. A friend suggested that maybe spaces in the path are causing the problem but I don't know which path in particular they were referring to. From what I've seen, the fix for that issue should be in the version of NAnt I'm using (0.85) anyway though. Does anyone have any other ideas?? FYI - it's a C# Winforms project using .NET 2.0. We want to be able to remove visual studio from the build machine in the future but right now I'm just trying to get a build that works. Any example build files would be gratefully accepted! Most of the good examples I've seen have been for Web projects :( Thanks, K. Get the name you always wanted with the new y7mail email address. ______________________________________________________________________ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email ______________________________________________________________________ ______________________________________________________________________ This email has been scanned by the MessageLabs Email Security System. For more information please visit http://www.messagelabs.com/email ______________________________________________________________________ IMPORTANT The information contained in this e-mail and any attachments is intended for the addressee only and may contain legally privileged or confidential information. If you are not the intended recipient you must not use, disclose, copy, distribute, alter, or take any action in reliance on the information and Avon Insurance plc will not accept liability for any loss or damage howsoever arising, directly or indirectly in reliance on it and gives no warranty or representation as to its accuracy or reliability. If you are not the addressee, please notify us immediately on 01789 202121* and delete the material from your computer and destroy any copies. Avon Insurance plc reserves the right to monitor and record incoming and outgoing email messages for the purposes of investigating or detecting unauthorised use of its system and ensuring its effective operation. Avon Insurance plc will not accept liability for any loss or damage as a result of any virus being passed on. Avon Insurance plc (No. 209606). Registered in England. Registered Office: Arden Street, Stratford upon Avon, Warwickshire CV37 6WA. Authorised and regulated by the Financial Services Authority. A member of the NFU Mutual group of companies and the Association of British Insurers. *For security and training purposes, telephone calls may be recorded and monitored. Get the name you always wanted with the new y7mail email address. www.yahoo7.com.au/y7mail |