Old 28th June 2018, 18:19   #1
CelesteBlanca10
Junior Member
 
Join Date: Jun 2018
Posts: 5
NSIS and VS2013 - error MSB3721

I just joined a company and inherited a few installer projects. I'm very new to NSIS, so probably missing common knowledge here, but it looks like NSIS is integrated into VS2013 as there is a "NSIS Compiler" node in the project's properties dialog.

The error that I'm getting is: error MSB3721: The command ""C:\Program Files (x86)\NSIS\Unicode\makensis" /DConfig="Debug" /DOutdir="../Output/Setup/Release\\"
/DInstallName="MyCompany" /DTargetName="MyInstaller.exe" /DPlatform="Win32" MyInstaller.nsi" exited with code 1.


It looks to me as the Outdir value has some extra slashes in there, but I can't seem to get them out of there.

The NSISComplier.rules file shows this:
code:
<StringProperty
Name="OutputDirectory"
DisplayName="OuputDirectory"
Switch="/DOutdir=&quot;[value]&quot;"
DefaultValue="$(OutDir)"
/>




So I looked at the OutputDirectory of the project in VS, and it did seem to have an extra slash in there, but whatever I do, it doesn't seem to change the NSIS command line value. I even put a direct path there, but nothing.

Thanks
CelesteBlanca10 is offline   Reply With Quote
Old 29th June 2018, 00:03   #2
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 5,122
NSIS itself does not integrate with VS so you must be using a 3rd-party extension.

(Stackoverflow duplicate: https://stackoverflow.com/questions/...-error-msb3721 )

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 29th June 2018, 15:08   #3
CelesteBlanca10
Junior Member
 
Join Date: Jun 2018
Posts: 5
OK. So what about this error in makensis.exe? Can you tell me anything about it?

The error that I'm getting is: error MSB3721: The command ""C:\Program Files (x86)\NSIS\Unicode\makensis" /DConfig="Debug" /DOutdir="../Output/Setup/Release\\"
/DInstallName="MyCompany" /DTargetName="MyInstaller.exe" /DPlatform="Win32" MyInstaller.nsi" exited with code 1.
CelesteBlanca10 is offline   Reply With Quote
Old 29th June 2018, 16:04   #4
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 5,122
That is not a message from makensis.exe. Make sure the path to makensis is correct, yours is missing .exe. I'm also guessing you are using the old Unicode fork?

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 29th June 2018, 16:51   #5
CelesteBlanca10
Junior Member
 
Join Date: Jun 2018
Posts: 5
Thanks, yea forced to use that Unicode fork.

Any idea where "ToolPath="%(NSIS_Compiller.ToolPath)"
" could be declared?



<NSIS_Compiller
Condition="'@(NSIS_Compiller)' != '' and '%(NSIS_Compiller.ExcludedFromBuild)' != 'true'"
CommandLineTemplate="%(NSIS_Compiller.CommandLineTemplate)"
ToolPath="%(NSIS_Compiller.ToolPath)"
Configuration="%(NSIS_Compiller.Configuration)"
OutputDirectory="%(NSIS_Compiller.OutputDirectory)"
InstallName="%(NSIS_Compiller.InstallName)"
TargetName="%(NSIS_Compiller.TargetName)"
Platform="%(NSIS_Compiller.Platform)"
AdditionalOptions="%(NSIS_Compiller.AdditionalOptions)"
Inputs="@(NSIS_Compiller)" />
</Target>
CelesteBlanca10 is offline   Reply With Quote
Old 29th June 2018, 17:07   #6
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 5,122
Why are you forced to use the fork and not NSIS v3?

I don't even know which tool you are using that provides this integration.

MSB* is perhaps MSBuild?

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 2nd July 2018, 15:26   #7
CelesteBlanca10
Junior Member
 
Join Date: Jun 2018
Posts: 5
Does NSIS v3 have all the Unicode support that the fork had? I don't know why they used it, the dev is no longer here and they haven't touched the installer in years.

Would the move to v3 be difficult? Using 2.4.6 now.
CelesteBlanca10 is offline   Reply With Quote
Old 2nd July 2018, 17:38   #8
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 5,122
You need to add "Unicode True" to your .nsi, that is about it.

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 2nd July 2018, 19:36   #9
T.Slappy
Major Dude
 
T.Slappy's Avatar
 
Join Date: Jan 2006
Location: Slovakia
Posts: 530
Send a message via ICQ to T.Slappy
Quote:
Originally Posted by CelesteBlanca10 View Post
Does NSIS v3 have all the Unicode support that the fork had? I don't know why they used it, the dev is no longer here and they haven't touched the installer in years.

Would the move to v3 be difficult? Using 2.4.6 now.
Using NSIS 3 is really recommended, it contains many important fixes and improvements for latest Windows versions, do not hesitate and upgrade immediately.

Back to your question: It looks like there is something wrong with your MSBuild configuration and/or NSIS cannot be recognized correctly.

As it is some custom tool there is no general answer for you. Simply try to track the problem and isolate the issue. Try to turn on detailed (diagnostic) output in MSBuild which can provide you more info.

Cool looking installer with custom design: www.graphical-installer.com
I offer NSIS scripting, C/C++/C#/Delphi programming: www.unsigned.sk
Develop NSIS projects in Visual Studio 2005-2019: www.visual-installer.com
or RAD Studio 2009, 2010, XE-10.3 Rio: www.rad-installer.com
T.Slappy is offline   Reply With Quote
Old 2nd July 2018, 23:50   #10
CelesteBlanca10
Junior Member
 
Join Date: Jun 2018
Posts: 5
Thanks a lot to both of you
CelesteBlanca10 is offline   Reply With Quote
Reply
Go Back   Winamp & Shoutcast Forums > Developer Center > NSIS Discussion

Tags
nsis, visual studio

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump