Old 19th December 2017, 01:29   #1
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
Lightbulb NSIS vNext preview

A new release is coming soon but in the mean time we would like your feedback on this incomplete preview release. Please keep in mind that this is not for production use.
Anders is offline   Reply With Quote
Old 20th December 2017, 21:18   #2
Nutzzz
Member
 
Join Date: May 2007
Location: Orange County, CA, U.S.A.
Posts: 50
We're using a slew of plugins with our painfully complicated (about 25000 lines) set of installers, and FWIW your posted version works just fine.
Nutzzz is offline   Reply With Quote
Old 4th January 2018, 22:03   #3
Kriggi
Junior Member
 
Join Date: Dec 2015
Posts: 9
If compile an example "Browse for Folder" in the NSIS v3.02.01, then the window title displayed is correctly.




When compiling the same example in the NSIS v3.03 preview the characters in the string are not correct.



Error is not only for Cyrillic, but for Latin characters (ANSI and Unicode build).
Kriggi is offline   Reply With Quote
Old 5th January 2018, 22:22   #4
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
Thumbs up

Quote:
Originally Posted by Kriggi View Post
When compiling the same example in the NSIS v3.03 preview the characters in the string are not correct.
Thank you for reporting this! I found the issue and will fix it before the final release.

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 9th January 2018, 14:01   #5
T.Slappy
Major Dude
 
T.Slappy's Avatar
 
Join Date: Jan 2006
Location: Slovakia
Posts: 520
Send a message via ICQ to T.Slappy
Hello Anders.

We have started testing the new version and made appropriate changes in Visual & Installer, RAD & Installer and Graphical Installer.

So far it looks good, probably the biggest changes are in nsDialogs which needs a lot of work (on our side) but we have found no serious issues.

Cool looking skinned Graphical Installers: www.graphical-installer.com
I offer NSIS scripting, C/C++/C#/Delphi programming: www.unsignedsw.com
Develop NSIS projects in Visual Studio 2005-2017: www.visual-installer.com
or RAD Studio 2009, 2010, XE-10.2 Tokyo: www.rad-installer.com
T.Slappy is offline   Reply With Quote
Old 31st October 2018, 22:27   #6
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
* NSIS Menu: We might dump wxWidgets and use .nsi version. Feedback is welcome.
* MakeNsisW: The tool menu has a new window spy feature.
* x64.nsh: ARM64 detection and some new platform detection macros.

This is not a complete release, just overwrite a temporary 3.03 install with these files.

3.04.zip

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 1st November 2018, 08:52   #7
mariusnegrutiu
Junior Member
 
Join Date: Jun 2013
Posts: 5
Getting rid of wxWidgets is much appreciated
Building wxWidgets was always a pain

Cheers,
Marius
mariusnegrutiu is offline   Reply With Quote
Old 2nd November 2018, 08:26   #8
JasonFriday13
Major Dude
 
JasonFriday13's Avatar
 
Join Date: May 2005
Location: New Zealand
Posts: 867
In the nsis menu, I'm getting a bunch of "Error, unable to open" messages, and all the plugins fail with the same format, examples:

C:\NSIS3 - Copy\bin\Zip2Exe2
!P=AdvSplash
!P=Banner

All I did was copy/paste my 3.03 install folder.

"Only a MouseHelmet will save you from a MouseTrap" -Jason Ross (Me)
NSIS 3 POSIX Ninja
Wiki Profile

Last edited by JasonFriday13; 2nd November 2018 at 08:28. Reason: clarify what program was used
JasonFriday13 is offline   Reply With Quote
Old 2nd November 2018, 16:05   #9
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
Quote:
Originally Posted by JasonFriday13 View Post
In the nsis menu, I'm getting a bunch of "Error, unable to open" messages, and all the plugins fail with the same format, examples:

C:\NSIS3 - Copy\bin\Zip2Exe2
!P=AdvSplash
!P=Banner
Thanks, I updated the .zip, should work now.

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 2nd November 2018, 17:52   #10
Pawel
Moderator
 
Pawel's Avatar
 
Join Date: Aug 2004
Location: Poland
Posts: 517
Send a message via ICQ to Pawel
@Anders,
The 3.04 preview build works fine for me.

However, it seems that there is still a problem with NSIS Menu app.
It can not find Zip2Exe2.exe (there is a Zip2Exe.exe in Bin folder, a typo?).

I am also happy that you are gonna replace NSIS Menu (based on wxWidgets) to nsis installer (wxWidgets was always a problem).

-Pawel
Attached Thumbnails
Click image for larger version

Name:	du.png
Views:	40
Size:	164.9 KB
ID:	54171  
Pawel is offline   Reply With Quote
Old 2nd November 2018, 19:13   #11
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
Quote:
Originally Posted by Pawel View Post
However, it seems that there is still a problem with NSIS Menu app.
It can not find Zip2Exe2.exe (there is a Zip2Exe.exe in Bin folder, a typo?).
Thanks, somehow missed that and it should actually work now.

It is not guaranteed that this menu will be used in the final release but it will be used for anyone else compiling NSIS without having wxWidgets configured.

I added a tiny shadow under the main text, please test under high DPI if possible (the app is only system DPI aware and will be blurry on monitors that don't not match your primary monitors DPI setting).

How many of you are running multimonitor systems with different dpi settings for each monitor?

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 4th November 2018, 14:34   #12
Kriggi
Junior Member
 
Join Date: Dec 2015
Posts: 9
Hello Anders.

I cannot compile any version starting with nsis-code-r7011-NSIS-trunk.

My build configuration is:
- Windows XP with SP3
- Microsoft Visual Studio 6.0 SP5 with Processor packs
- Microsoft SDK (February 2003)
- Python 2.7
- Scons 1.20
- wxWidgets 1.28
- MASM 1.11
- Zlib 1.2.11

I get the error message:

HTML Code:
scons: Reading SConscript files ...
Using Microsoft tools configuration (6.0)
Checking for memset requirement... (cached) no
Checking for memcpy requirement... (cached) no
Checking for C library gdi32... (cached) yes
Checking for C library user32... (cached) yes
Checking for C library pthread... (cached) no
Checking for C library iconv... (cached) no
Checking for C library shlwapi... (cached) yes
Checking for C library oleaut32... (cached) yes
Checking for C library version... (cached) yes
Checking for C library zdll... (cached) yes
Checking for C library zdll... (cached) yes
Checking for C library zdll... (cached) yes
Checking for C library dl... (cached) no
Checking for C library gdi32... (cached) yes
Checking for C library iconv... (cached) no
Checking for C library pthread... (cached) no
Checking for C library user32... (cached) yes
Checking for C library version... (cached) yes
Checking for C library zdll... (cached) yes
Checking for C++ library cppunit... (cached) no
scons: done reading SConscript files.
scons: Building targets ...
Install file: "Examples\makensis.nsi" as ".instdist\Examples\makensis.nsi"
Install file: "build\urelease\VPatch\Source\GenPat\GenPat.exe" as ".instdist\Bin\GenPat.exe"
Install file: "build\urelease\Library\LibraryLocal\LibraryLocal.exe" as ".instdist\Bin\LibraryLocal.exe"
Install file: "build\urelease\MakeLangId\MakeLangId.exe" as ".instdist\Bin\MakeLangId.exe"
cl /Fobuild\urelease\makensis\Plugins.obj /c Source\Plugins.cpp /nologo /O2 /GX /W3 /FAcs /Fabuild\urelease\makensis\Plugins.obj.lst /MD /TP /nologo /O2 /GX /W3 /FAcs /Fabuild\urelease\makensis\Plugins.obj.lst /MD /DNSISCALL=__stdcall /D_UNICODE /DUNICODE /DMAKENSIS /D_WIN32_IE=0x0500 /Ibuild\urelease\config /IC:\Develop\ZLIB\include
Plugins.cpp
Source\Plugins.cpp(269) : error C2899: typename cannot be used outside a template declaration
Source\Plugins.cpp(287) : see reference to function template instantiation 'void __cdecl PrintPluginDirsHelper::print(const class std::map<class std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >,class std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >,struct STLHelpers::string_nocasecmpless<class std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> >,unsigned short>,class std::allocator<class std::basic_string<unsigned short,struct std::char_traits<unsigned short>,class std::allocator<unsigned short> > > > &,const char *)' being compiled
scons: building terminated because of errors.
Here is a section of code in the file Plugins.cpp with these error line numbers:
PHP Code:
265| ...
266|  struct PrintPluginDirsHelper {
267|   template<class C> static void print(const C&c, const char*indent "")
268|   {
269|     std::/*unordered_*/set<typename STLHelpers::mapped_type_helper<C>::type
270
|  #ifdef _WIN32
271|       , Plugins::strnocasecmp
272
|  #endif
273|     > seen;
274|     for (NSIS_CXX_TYPENAME C::const_iterator it c.begin(); it != c.end(); ++it)
275|     {
276|       const tstring path GetDllPath(it->second);
277|       if (contains(seenpath)) continue;
278|       seen.insert(path);
279|       _ftprintf(g_output_T("%"NPRIns _T("%"NPRIs _T("\n"), indentpath.c_str());
280|     }
281|   }
282|  };
283|
284|  void Plugins::PrintPluginDirs()
285|  {
286|    _ftprintf(g_output_T("Plugin directories:\n"));
287|    PrintPluginDirsHelper::print(m_dllname_to_path"  ");
288|  }
289| ... 
This is a new code that has been added in nsis-code-r7011-NSIS-trunk. How to fix it?
Kriggi is offline   Reply With Quote
Old 4th November 2018, 16:23   #13
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
Quote:
Originally Posted by Kriggi View Post
This is a new code that has been added in nsis-code-r7011-NSIS-trunk. How to fix it?
Try replacing "typename STLHelpers::mapped_type_helper..." with "NSIS_CXX_TYPENAME STLHelpers::mapped_type_helper...".

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 4th November 2018, 16:36   #14
Kriggi
Junior Member
 
Join Date: Dec 2015
Posts: 9
Quote:
Originally Posted by Anders View Post
Try replacing "typename STLHelpers::mapped_type_helper..." with "NSIS_CXX_TYPENAME STLHelpers::mapped_type_helper...".
Now I get the following error:
HTML Code:
...
script.cpp
Source\boost/scoped_ptr.hpp(73) : fatal error C1001: INTERNAL COMPILER ERROR
                (compiler file 'E:\9044\vc98\p2\src\P2\ehexcept.c', line 882)
 Please choose the Technical Support command on the Visual C++
 Help menu, or open the Technical Support help file for more information
scons: *** [build\urelease\makensis\script.obj] Error 2
scons: building terminated because of errors.
Kriggi is offline   Reply With Quote
Old 4th November 2018, 17:36   #15
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
Quote:
Originally Posted by Kriggi View Post
Now I get the following error:
That's a crash in the compiler, not sure what to do about it. What happens if you try a older scoped_ptr.hpp from 3.02ish? Or maybe "typename NSIS::CXX::stdsmartptr" needs its "typename" prefix removed?

Drop by on our Slack channel if possible and we can try to find a solution...

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 4th November 2018, 21:24   #16
Kriggi
Junior Member
 
Join Date: Dec 2015
Posts: 9
Quote:
Originally Posted by Anders View Post
What happens if you try a older scoped_ptr.hpp from 3.02ish?
Same error:
HTML Code:
script.cpp
Source\boost/scoped_ptr.hpp(64) : fatal error C1001: INTERNAL COMPILER ERROR
                (compiler file 'E:\9044\vc98\p2\src\P2\ehexcept.c', line 882)
 Please choose the Technical Support command on the Visual C++
 Help menu, or open the Technical Support help file for more information
scons: *** [build\urelease\makensis\script.obj] Error 2
scons: building terminated because of errors.
scoped_ptr.hpp (from v3.02)
PHP Code:
59|    ...
60|    void reset(0// never throws
61|    {
62|        assert(== || != ptr); // catch self-reset errors
63|        this_type(p).swap(*this);
64|    }  //  <-----------fatal error C1001
65|    ... 
Quote:
Originally Posted by Anders View Post
Or maybe "typename NSIS::CXX::stdsmartptr" needs its "typename" prefix removed?
No effect, same error (look my previous message).

Quote:
Originally Posted by Anders View Post
Drop by on our Slack channel...
I do not know what is "Slack channel"
Kriggi is offline   Reply With Quote
Old 4th November 2018, 21:32   #17
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
Quote:
Originally Posted by Kriggi View Post
Same error:
I believe we already shipped a release with the changes in scoped_ptr.hpp so that should work with VC6. You are somehow crashing the compiler so it is hard to say exactly what needs to change. You could try commenting out the reset method etc. (Not sure if it is needed). Even adding pointless "do nothing" code to script.cpp or the .hpp file might stop the compiler from crashing. You could also try removing the "build" directory from your root folder and build everything again.

Quote:
Originally Posted by Kriggi View Post
I do not know what is "Slack channel"
https://nsischat.slack.com/ ( https://nsischat.herokuapp.com/ )

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 4th November 2018, 23:34   #18
Kriggi
Junior Member
 
Join Date: Dec 2015
Posts: 9
Anders, I found a problem. The file build.h, line #173 (class DiagState):

PHP Code:
  template<class Mstruct mapped_type_helper typedef typename STLHelpers::mapped_type_helper<M>::type type; }; 
If this line is replaced with a line from code nsis-code-r7010-NSIS-trunk:

PHP Code:
  template<class Mstruct mapped_type_helper typedef typename M::value_type::second_type type; }; 
then NSIS build is succeeds. Otherwise I get "fatal error C1001..."

Also the line #269 in the file Plugins.cpp was corrected.

Was
PHP Code:
 std::/*unordered_*/set<typename STLHelpers::mapped_type_helper<C>::type 
Fixed
PHP Code:
 std::/*unordered_*/set<NSIS_CXX_TYPENAME STLHelpers::mapped_type_helper<C>::type 
Kriggi is offline   Reply With Quote
Old 7th November 2018, 00:29   #19
Anders
Moderator
 
Anders's Avatar
 
Join Date: Jun 2002
Location: ${NSISDIR}
Posts: 4,913
MakeNSISW is now System DPI aware, please test to make sure all dialogs work correctly. It will be DWM scaled (blurry) on monitors with a different DPI than the primary monitor.

@Kriggi: VC6 should also work again now with r7047.

IntOp $PostCount $PostCount + 1
Anders is offline   Reply With Quote
Old 7th November 2018, 19:39   #20
Kriggi
Junior Member
 
Join Date: Dec 2015
Posts: 9
Quote:
Originally Posted by Anders View Post
VC6 should also work again now with r7047.
Yes, now everything is fine.
Thank you very much!
Kriggi is offline   Reply With Quote
Reply
Go Back   Winamp & SHOUTcast Forums > Developer Center > NSIS Discussion

Tags
preview, release

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