Application: HM NIS Edit
Category: Development
Description: (Taken from the web site) HM NIS Edit is the best Editor/IDE for Nullsoft Scriptable Install System (NSIS). Its useful for experts and beginners in the creation of Setup programs with the NSIS.
Download:
NSIS Preconfigured:
http://cubegames.net/taneth/uploads/HM_NIS_Edit_Portable_NSIS_Preconfigu...
Just HM NIS Edit:
http://cubegames.net/taneth/uploads/HM_NIS_Edit_Portable_2.03_Developmen...
Release Notes:
Development Test 7 (31-07-2008):
fixed a bug where the INI wasn't being moved.
Development Test 6 (22-07-2008):
fixed the DefaultData problem, and made changes suggested by OliverK.... again.
Development Test 5 (04-07-2008):
fixed problems listed by OliverK.
Development Test 4 (28-06-2008):
fixed ReplaceInFile problems.
Development Test 3 (17-06-2008):
fixed up the integrated NSIS support.
Development Test 2 (13-06-2008):
Fixed some Typos.
Development Test 1 (6-06-2008):
Initial Release
Seems to work o/k
Have had a quick look. Quite a nice NSIS editor that lets you edit & compile in one application. Doesn't seem to have been updated in a long time though. I could be tempted to use this for script work instead of Notepad++/NSIS. I had a little bit of trouble configuring the compiler option, until I figured out it was looking for the original NSIS exe rather than the portablised NSIS launcher exe. Anyway, I like this little integrated editor/compiler. Good effort.
Kim
it is prety good, yeah. I was
it is prety good, yeah. I was using notepad++ for a bit, but then someone reccomemended this for some other guy, and I liked it. also, does anyone know what stuff the NSIS Portable launcher cleans up? like does makensis.exe leave anything or is it just the GUI?
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
The NSISPortable launcher
The NSISPortable launcher will clean up the registry entries left by makensis.exe. I wrote the launcher to monitor nsis.exe, makensis.exe and zip2exe.exe, and only close if none of those are running.
The developer formerly known as ZGitRDun8705
makensis.exe/makensisw.exe
From looking at the source code for 'makensis.exe', I believe that it is only the GUI that uses the registry. The only things 'makensis.exe' uses are the following environment variables:
APPDATA (Windows)
HOME (Linux, Unix, etc)
NSISCONFDIR
I see no indication of that
I see no indication of that in the AppData folder or the Launcher source code.
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
RE: makensis.exe/makensisw.exe
It is in the actual source code for makensis.exe (makenssi.cpp).
True, it doesn't actually use the AppData folder (from what I could see), but it's there in the source.
If you have the source code archive for NSIS, just look in the file 'makenssi.cpp'.
Fair enough
Fair enough
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
Program looks nice.
I'm downloading and will test later.
Jacobm001
new version
Zach, i stole some of your nsis portable code and added it in. dev test 3 now available.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
its not stealing since it's
its not stealing since it's all OSS ;)
The developer formerly known as ZGitRDun8705
Settings
It doesn't remember where NSIS is. You need to replace the drive letter in it's options file.
Jacobm001
fixed in dev test 4.
fixed in dev test 4.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
Issues: Just downloaded Dev
Issues:
Just downloaded Dev Test 4-without NSIS.
Relaunches HM NIS edit after I close. If I remember correctly, this means you need a
Goto TheEndafter your after your launch and exit, as well as when your down putting the registry back together. i.e.RemoveNSISSettings: ${registry::SaveKey} "HKEY_CURRENT_USER\Software\NSIS" "$SETTINGSDIRECTORY\NSIS_portable.reg" "" $0 ${registry::DeleteKey} "HKEY_CURRENT_USER\Software\NSIS" $R0 Sleep 100 ${registry::KeyExists} "HKEY_CURRENT_USER\Software\NSIS-BackupByNSISPortable" $R0 ${registry::MoveKey} "HKEY_CURRENT_USER\Software\NSIS-BackupByNSISPortable" "HKEY_CURRENT_USER\Software\NSIS" $R0 Sleep 100 Goto TheEnd LaunchAndExit: Exec $EXECSTRING Goto TheEndDoesn't appear to be fixing the path to my flash drive. Loses it when I go from computer to computer.- Figured it out! You don't seem to have your nisedit.ini anywhere. Put that in App/DefaultData to be copied in if the script can't find any setting in Data.
Also, MakeNSIS gives the following errors:
2 warnings:
Variable "MUI_TEMP1" not referenced or never set, wasting memory!
Variable "MUI_TEMP2" not referenced or never set, wasting memory!
Sorry if I seen to be burying you. We can work out the PAF specific things after that. Good job, and a great app! Wish I'd found it.
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
thanks for the feedback.
thanks for the feedback. fixed in Dev test 5, which i will release.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
Doesn't appear to be fixing
Doesn't appear to be fixing drive paths either.
I went wild on the code the other night, if you want, I'll post it for you, though I still haven't gotten it to adjust the paths. Also, you'll need to move all of the files for the plugins, as per http://portableapps.com/node/11715#comment-76948. I didn't know this at the time of coding.
I would suggest figuring out of you are going to support an external compiler (one not under HM NIS EditPortable/App/nsis). If you do, well, its a barrel full.
Alright. I'll get off your case for now.
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
hmmm. i took the download
hmmm. i took the download link down becuase it wasn't properly doing the paths. seems like a common problem. also, what the launcher is meant to do in order:
there is a splash screen in there somewhere, but this is a list of the basic functions.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
Here's where I'm at. I still
Here's where I'm at. I got the AdjustPaths to work. If you want to be nice, you can mention me, but you don't have to.
Your problem was here:
${ReplaceInFile} "$SETTINGSDIRECTORY\nisedit.ini" '$LASTDRIVE' '$CURRENTDRIVE'You had added some extra gobble-de-gook, which was messing up the replace. It stores in the manner of "X:"
I also added some ini gobble-de-gook which allows for the NSIS portable to be in more places then
Good work on the base. Continue the project. I still get the mui temp warnings, I haven't figured out where those are from.
Enjoy
OliverK
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
MUI: kill it!
(I got caught with this also, in BPBible Portable!)
MUI is not needed unless you need a page like the Mozilla thing on the first run of FF
You aren't doing that, so you can remove the lines:
You'll save at least 5KB if you disable it! :O
Also, you use registry.nsh. You really MUST HAVE
${registry::Unload}in TheEnd - otherwise it'll leave stuff in %TEMP%
And no, I can't test it yet - I'm only going on what OliverK posted! I would have downloaded it, but you removed the link... :-(
Chris Morgan (formerly chrism) :-)
Religion = Christian\Christadelphian
Likes_Swearing = false
Portable_App_Developer = true
Thanks
Thanks
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
i noticed you referenced to
i noticed you referenced to PortableApps\NSISPortable\NSISPortable.exe.
HM NIS Edit only likes to reference to the actual command line file, makensis.exe.
fixed that and uploaded new version.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
look
look again.
NSISDirectorySetup: Rename "$SETTINGSDIRECTORY\nisedit.ini" "$PROGRAMDIRECTORY\nisedit.ini" IfFileExists "$SETTINGSDIRECTORY\nsisconf.nsh" MoveNSISSettings CheckAlternateNSIS MoveNSISSettings: Rename "$SETTINGSDIRECTORY\nsisconf.nsh" "$EXEDIR\App\nsis\nsisconf.nsh" Goto Launch CheckAlternateNSIS: IfFileExists "$CURRENTDRIVE\PortableApps\NSISPortable\NSISPortable.exe" FixNSH UseINIAlternatePath FixNSH: Rename "$CURRENTDRIVE\PortableApps\NSISPortable\Data\settings\nsisconf.nsh" "$CURRENTDRIVE\PortableApps\NSISPortable\App\NSIS\nsisconf.nsh" Goto LaunchIt only does this for using the NSIS Portable if its not under App/nsis
Which it checks first.
By the way, the INI alternate path allows someone not using stuff under the PApps folder. Or, using it inside of another folder.
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
yes but: IfFileExists
yes but:
refers to NSISPortable.exe and HM NIS Edit only likes makensis.exe, as in the command line version.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
It uses to see whether to
It uses to see whether to flop X:/PortableApps/NsisPortable/App/nsis/config or X:/PortableApps/HM NIS Edit Portable/App/nsis
I'll leave you alon, and see if your version is working- mine is having trouble storing the directory letter.
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
Should I leave you
Should I leave you alone?
Nether set up paths properly.
The problem is here:
AdjustPaths: ReadINIStr $LASTDRIVE "$SETTINGSDIRECTORY\${NAME}Settings.ini" "${NAME}Settings" "LastDrive" ${GetRoot} $EXEDIR $CURRENTDRIVE StrCmp $LASTDRIVE $CURRENTDRIVE StoreCurrentDriveLetter IfFileExists "$SETTINGSDIRECTORY\nisedit.ini" "" StoreCurrentDriveLetter ${ReplaceInFile} "$SETTINGSDIRECTORY\nisedit.ini" '$LASTDRIVE' '$CURRENTDRIVE' Delete "$SETTINGSDIRECTORY\nisedit.ini.old" Goto NSISDirectorySetupThose extra "" in
IfFileExists "$SETTINGSDIRECTORY\nisedit.ini" "" StoreCurrentDriveLetterare throwing things off.You still need to put a nisedit.ini in the defualtdata directory! Its saving to the registry.
I really like this app, and I'm trying to help. You are, however, more then welcome to tell me to buzz off and go away.
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
actually, i like your
actually, i like your criticism, i usually dont get anywhere near as much as i like. :P
fixing as you read this.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
Okay. I feel like a dufas
Okay. I feel like a dufas and shall apologize. When I added in some extra code- I broke the path adjustment, since it wasn't able to store the new drive letter. So, then I make it store the letter- bet then it never gets around to actually replacing the drive letter.
So . . . I broke you script. I busted it and busted it good. But, thankfully, I've gotten the problem fixed. Now, if all the other features work . . .
Now, I'll shut my stupid mouth and leave you alone.
I due hope this goes official.
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
thanks for all of your
thanks for all of your criticism, and re-writing. hopefully this should be all that needs to be done, but i cant do a compile a school, so i'll get the new version up at home.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
Okay. Again, I'm sorry about
Okay. Again, I'm sorry about screwing it up.
Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.
don't worry about it. i'm not
don't worry about it. i'm not too stressed. :P
EDIT: made fixes, and released a new version.
EDIT2: fixed a problem, new version. see main post.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
Testing
Just testing HM NIS Edit 2.03 Development Test 7 with NSIS Preconfigured.
C:\Documents and Settings\Taffin.UPSTAIRS-1\Desktop\HMNISEditPortable\App\NSIS\makensis.exeC:\Documents and Settings\Taffin.UPSTAIRS-1\Desktop\HMNISEditPortable\App\NSIS\NSIS.chmhttp://forums.winamp.com/forumdisplay.php?s=&forumid=65They have the Internet on computers now? - Homer Simpson
Fixed, and uploading new
Fixed, and uploading new version now.
Australia's Great Dividing Range : Dividing From What?
Patrick Patience is a key virtue.
behold, return of taneth111! (insert darth vader music here)
http://portableapps.com/node/
http://portableapps.com/node/15916
I don't know if you've solved the inital setup location, but you could use something like the code there.
I'll post here just for fun:
SkipSplashScreen: ;=== Check for data files IfFileExists "$PROGRAMDIRECTORY\config.conf" GetPassedParameters ;=== settings already in program directory IfFileExists "$SETTINGSDIRECTORY\config.conf" MoveSettings ;=== settings found in data directory ;=== Copy the default settings files StrCmp $DEFAULTLOCATION "true" "" GetPassedParameters ;=== if not default location, user is on their own CreateDirectory "$SETTINGSDIRECTORY" CopyFiles /SILENT "$EXEDIR\App\DefaultData\settings\*.*" "$SETTINGSDIRECTORY\" ;${StrReplace} $0 '\' '/' '$PROGRAMDIRECTORY\bin\ffmpeg.exe' ;you don't usually need these, unless the app is . . . funny :D ;${StrReplace} $1 '/' '\\' '$FFMPEGPATH' ${ConfigWrite} "$SETTINGSDIRECTORY\config.conf" "ffmpegLibLocation=" "$FFMPEGPATH" $R0 ${GetRoot} $EXEDIR $0 ${DirState} "$0\Documents\Videos\" $VIDEOEXIST StrCmp $VIDEOEXIST "-1" SetAtRoot SetAtVideos SetAtVideos: ${ConfigWrite} "$SETTINGSDIRECTORY\config.conf" "downloadDir=" '$0\\Documents\\Videos\\' $R0 Goto MoveSettings SetAtRoot: ${ConfigWrite} "$SETTINGSDIRECTORY\config.conf" "downloadDir=" '$0\\' $R0Good gracious! There goes a kangaroo. I must have a practice with me boomerang- Now then, slowly back
If you throw that thing at me, I'll jump right on your head.
Innit marvellous? Got a land full of kangaroos and I had to pick that one.