You are here

PortaLaunch (Used to be: Portable Application Launcher)

25 posts / 0 new
Last post
sbabinea
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-01 08:55
PortaLaunch (Used to be: Portable Application Launcher)

Building upon the great work that Klonk is doing with his Portable Application Template version 1.9.1 (found here: https://portableapps.com/node/6709), I took it one step further and make a full-blown launcher that can be configured just by editing an ini file.

If you have a few moments take a look at it here:
http://thebabineaus.com/software/PortaLaunch/PortaLaunch.rar

This will be the last release except for bugfixes! John is working on a project with similar goals as this and in time that will be released. Unless there is a need for me to continue, don't expect much. Smile

This one includes a bunch of cool stuff like recompiling on the fly and a little program to help you export your registry keys. I put a few hours into it..

NOTE: This is the OLD version, for reference: http://thebabineaus.com/software/PortableAppLauncher/PortableAppLauncher...

PortaLaunch should be considered "beta" quality.

Features: (in addition to those in the Portable Application Template)

  • will recompile the nsi file for you on the fly with your description and icon so it shows up properly in PAM.
  • Includes a GetReg program to help export any registry keys for your application
  • You can customize the splash page!
  • Will dynamically tell you the application that is launching on the fly in the splash screen
  • Portable-izing an application is as simple as exporting any related registry keys and editing an ini file. No recompilation necessary!
  • The registry file "template" (Config\RegKeys.reg), SettingsDir#, EnvVar#, and SettingsFile# are all parsed and any occurrences of these variables will automatically be replaced with the appropriate value:
    • %DESTPATH% = App\{Application}
    • %EXEPATH% = .\ (current directory that the wrapper is running from)
    • %DATAPATH% = Data\
    • %USERDATAPATH% = Data\UserProfile
    • %LICENSEKEY% = RegLicenseKey specified in ini file
    • %LICENSENAME% = RegLicenseName specified in ini file
    • %LICENSECOMPANY% = RegLicenseCompany specified in ini file
    • %COMPUTERNAME% = The computer name that the program is currently running on
    • %COMPUTERNAMEFULL% = the fully qualified domain name of the computer the program is currently running on (e.g. computer.domain.com)
    • %USERSID% = The SID (Security ID) of the currently logged in user.
    • %USERNAME% = The username of the currently logged in user
  • Supports setting local environment variables, including substitution so things like PATH=..\..\..\common\jre\bin;%PATH% work as expected.
  • Supports replacing files and/or directories on the local disc, then putting the old ones back when the program finishes
  • Supports checking to make sure the logged in user has local admin rights, if your program needs that.
  • Supports custom splash screen, or use the (currently lame) built in one
  • Supports preloading DLLs, in case you need them (some old VB6 apps require this if you want to make them portable, for example).
  • The installer will extract its own sources if you supply a --dumpsource command-line option. To do this, simply open a command prompt, navigate to the directory where the launcher executable is, and run it like this: PortableApp Launcher.exe --dumpsource

Please try it out and come back and comment on it! Any bug reports get a gold star Wink

Changelog:
1.0.3 - 2007/05/12 - Bugfix, feature release

  • Changed the name to "PortaLaunch".
  • Added the ability to set your own program icon, name and description by automatically recompiling the NSI file for you, just by setting Recompile=true in the ini file.
  • ?

  • Fixed the splash screen (again). Everthing but the current combination of InitPluginsDir, /NOUNLOAD, marquee and newadvsplash calls were crashing the launcher hard. It seems to be stable now though.
  • Changed the splash screen to one much cooler looking (thanks JM!)
  • Added GetReg utility to help with exporting the registry keys for your app

1.0.2 - 2007/05/11 - Bugfix, minor feature release

  • Fixed a bug where it wasn't showing the splash screen even when it was enabled.
  • Added a dynamic notice in the splashscreen telling the user which application is starting.

1.0.1 - 2007/05/11 - Bugfix, minor feature release

  • Fixed SettingsDir# to actually work
  • Modified the SettingsFile# to work like the new SettingsDir# functions. I haven't found
    anything to test this on yet, but seems like it should work!
  • Added a HideWindow .ini option for hiding any DOS box that might pop up, as is the case when
    running scripts or JIT-compiled applications (Java apps, for example).
  • The variable substitution now works for the SettingsDir#, SettingsFile#, and EnvVar# ini
    values, in addition to the RegKeys.reg file.
  • Added a %USERNAME% variable to the list of variables that are replaced in the reg file,
    SettingsDir#, EnvVar# and SettingsFile# .ini settings
  • In addition to the variable substitution above, any environment variables will also get
    replaced with the appropriate values.
  • Variables were not getting substituted unless they were at the very end of the string
    (PATH=..\..\..\jre\bin;%PATH%, for example). Now they will be substituted no matter what
    position they are in the string.

1.0 - 2007/05/09 - Initial release

-Steve.

Klonk
Offline
Last seen: 11 years 12 months ago
Joined: 2006-04-21 03:08
Great work,

you added everything that might be needed.

personally I was also thinking of moving all the settings to an INI file.

With your version there is no need anymore to use NSIS to compile the source anymore simply editing the INI file is sufficient.

I'm impressed. As discussed in the other thread I will integrate some of your ideas if you don't mind (maybe it will work a little bit different, but the result will be the same in the end.

Just one comment: Maybe it might be a good idea to mention on which version of the PAT your version was built on (to avoid confusion for the users when at some point the development differs)

sbabinea
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-01 08:55
Just one comment: Maybe it


Just one comment: Maybe it might be a good idea to mention on which version of the PAT your version was built on (to avoid confusion for the users when at some point the development differs)

Good idea. I mentioned in the source as well as my post. How's that?

InsideLine
Offline
Last seen: 13 years 10 months ago
Joined: 2007-04-02 18:12
It's pretty cool, but can it

It's pretty cool, but can it support custom icons? That would be the big issue for me.

======
"Don't look now, but there's one too many persons in this room and I think it's you" - Groucho Marx

"Don't look now, but there's one too many persons in this room and I think it's you" - Groucho Marx

Zach Thibeau
Zach Thibeau's picture
Offline
Last seen: 1 year 5 months ago
Developer
Joined: 2006-05-26 12:08
Well

Well InsideLine for one thing all you have to do in the icons section replace the name.ico (or whatever it is. I haven't really looked at the source :P) and replace it with your apps icon and recompile simple as that
-----------------------------
Finally after 2 years I am going for my Learners permit so I can drive...Look out world here I come

your friendly neighbourhood moderator Zach Thibeau

sbabinea
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-01 08:55
Pretty Much..

There's no way to change the icon without recompiling it. The source is included though, so replace PortableApp Launcher.ico with your icon then recompile the .nsi file.

-Steve.

InsideLine
Offline
Last seen: 13 years 10 months ago
Joined: 2007-04-02 18:12
.

well I'm not completely stupid. I know how to recompile and replace the icons, but I'm just saying it would be even better to define the icon in the .ini file. I know that's obviously impossible, but I just threw it out anyways.

=======
"Don't look now, but there's one too many persons in this room and I think it's you" - Groucho Marx

"Don't look now, but there's one too many persons in this room and I think it's you" - Groucho Marx

paladin225
Offline
Last seen: 16 years 9 months ago
Joined: 2007-05-02 19:30
...

So why not have a program where you make changes to the INI file, that, when you run it, recompiles itself if it detects a new icon file?

Wink

Rick Smith // Paladin225

Rick Smith // Paladin225

ZachHudock
ZachHudock's picture
Offline
Last seen: 1 year 2 months ago
Developer
Joined: 2006-12-06 18:07
while this is an interesting

while this is an interesting concept, if the nsi has to be recompiled with the new data anyway, it would be more space efficient to just do it manually than to write a program to do it for you

The developer formerly known as ZGitRDun8705

InsideLine
Offline
Last seen: 13 years 10 months ago
Joined: 2007-04-02 18:12
.

yeah I think you'd have to have NSIS in there alongside (or built into) the app to have it compile. Oh well. Just an idea.

=====
"Don't look now, but there's one too many persons in this room and I think it's you" - Groucho Marx

"Don't look now, but there's one too many persons in this room and I think it's you" - Groucho Marx

Joble
Joble's picture
Offline
Last seen: 15 years 6 months ago
Joined: 2007-05-03 12:46
External Icon File

I seem to remember, back in the days of Windows 3.1 that you could have an external icon file. I am quite the amature, but is that still possible? You could then get the icon from the program you want to run and save it as some default.ico that would be associated by windows for that program. Kind of like associating an icon with an .lnk file.

I don't know if that can be done, but just knowing it's possible is half the battle. Even so, seems like such a small issue for such an awsome launcher. NSIS is easy enough to use if you want a different icon.

J.

Have an Awesome Day!

paladin225
Offline
Last seen: 16 years 9 months ago
Joined: 2007-05-02 19:30
Only teasing...

Note the wink... Wink

Rick Smith // Paladin225

Rick Smith // Paladin225

sbabinea
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-01 08:55
Updated to version 1.0.1

If you have been testing this out please upgrade. The SettingsDir# parameter didn't work at all as expected and I ended up deleting my entire Windows profile (and my large My Documents folder with it. Yay for backups!!)

I will update my Freemind launcher with this version too, if you use that. This will demonstrate some of the new features Wink

1.0.1 - 2007/05/11 - Bugfix, minor feature release

  • Fixed SettingsDir# to actually work
  • Modified the SettingsFile# to work like the new SettingsDir# functions. I haven't found
    anything to test this on yet, but seems like it should work!
  • Added a HideWindow .ini option for hiding any DOS box that might pop up, as is the case when
    running scripts or JIT-compiled applications (Java apps, for example).
  • The variable substitution now works for the SettingsDir#, SettingsFile#, and EnvVar# ini
    values, in addition to the RegKeys.reg file.
  • Added a %USERNAME% variable to the list of variables that are replaced in the reg file,
    SettingsDir#, EnvVar# and SettingsFile# .ini settings
  • In addition to the variable substitution above, any environment variables will also get
    replaced with the appropriate values.
  • Variables were not getting substituted unless they were at the very end of the string
    (PATH=..\..\..\jre\bin;%PATH%, for example). Now they will be substituted no matter what
    position they are in the string.
sbabinea
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-01 08:55
Updated 1.0.2

Found a bug already! And while I was at it I added another feature that I've been kicking around.

1.0.2 - 2007/05/11 - Bugfix, minor feature release

  • Fixed a bug where it wasn't showing the splash screen even when it was enabled.
  • Added a dynamic notice in the splashscreen telling the user which application is starting.
rgann
Offline
Last seen: 16 years 10 months ago
Joined: 2007-04-28 14:26
Where is the "source"?

Just downloaded v1.02 and I notice the nsi source is not
included! Did you forget, or have you gone "closed source"?

I ask, because I noticed in v1.00 (and in Klonk's launcher)
that there are a couple of conditions where these launchers
may either fail or cause 'minor' corruption of the registry.
I have been planning on sending each of you the details, but
it is quite involved, and I have not had the time to post a
detailed and coherent message explaining the potential problem.

Keep up the good work. (I don't want to have to write my own from scratch) Wink

sbabinea
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-01 08:55
Check out the feature list ;)


The installer will extract its own sources if you supply a --dumpsource command-line option. To do this, simply open a command prompt, navigate to the directory where the launcher executable is, and run it like this: PortableApp Launcher.exe --dumpsource

Smile This is how to get the sources... I did it this way because it was easier to keep the sources in sync with the installer and it makes the distribution smaller.

Oh, and definitely let me know of any problems you encounter.

-Steve.

paladin225
Offline
Last seen: 16 years 9 months ago
Joined: 2007-05-02 19:30
Ooh, nice...

Great feature. That could come in handy for the other PortableApps.

Rick Smith // Paladin225

Rick Smith // Paladin225

InsideLine
Offline
Last seen: 13 years 10 months ago
Joined: 2007-04-02 18:12
.

I think you can do the same, or something similar using an ordinary shortcut to the app, with the command line statement at the end of the path.
====
"Don't look now, but there's one too many persons in this room and I think it's you" - Groucho Marx

"Don't look now, but there's one too many persons in this room and I think it's you" - Groucho Marx

sbabinea
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-01 08:55
That's true.

Make a shortcut then add a " --dumpsource" (note the space) to the Target in the Shortcut Properties window.

edyshor
Offline
Last seen: 7 years 9 months ago
Joined: 2007-01-11 15:39
Bug - possibly fixed ?!

First of all you have my sincere appreciations for the PortableApps suite and its neat Launcher.

I own an ASUS notebook and its display is (as common in notebooks) widescreen, so here, i think, lies the problem (something related to resolution anyway). The problem is that the Launcher gets disorted and much larger than normal (especialy in width), with effects as displacing buttons imags from their assigned hotspots. The close ("X") button is shown much to the left and top then the spot were i have to click for the launcher to close. That's one example. The arrea that represents the differnce from the normal size to the current size is black.

Steve Lamerton
Steve Lamerton's picture
Offline
Last seen: 10 years 6 months ago
Developer
Joined: 2005-12-10 15:22
You'll

need this.

Yours

Steve Lamerton

My Blog

sbabinea
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-01 08:55
Updated.

This is a neat release. Check it out.

-Steve.

Davej0h
Offline
Last seen: 16 years 10 months ago
Joined: 2007-05-20 13:10
Could somebody please make a

Could somebody please make a small tutorial (how-to).

I am a very big noob, but want to run a program from my usb stick.
The program uses registy shizzle, but I don't know how to hun it.

U can mail me to (when you, for example want to make the program portable for me). davej0h@hotmail.com

Greetings,
Dave

AgentOrange
Offline
Last seen: 7 years 6 months ago
Joined: 2007-06-02 10:13
Problem with systems with locked system tray

Hi!
I just love the apps and the Launcher but I have recently encountered an issue with a specific setup.

My public library has locked both the system tray (only the clock is shown) and the right mouse button (yes, it stinks).

So, I have to re-load the launcher every time I want to access the menu... not convenient at all.
So I set-out looking for something to work around the problem and may have found it:
On the Sandisk U3 keys, their launcher puts a small frameless window on the desktop (it contains a simple logo image). The window can be moved around but not closed and it serves the exact same purpose as the tray icon... could be worth looking into integrating this feature into the next version of the launcher...

François

François

Simeon
Simeon's picture
Offline
Last seen: 9 years 5 months ago
DeveloperTranslator
Joined: 2006-09-25 15:15
Or

you could put a Launcher for the Launcher of the app you want into the root of your drive.
That's what I have for FF and TB.
“Science is the belief in the ignorance of the experts” - Richard P. Feynman

"What about Love?" - "Overrated. Biochemically no different than eating large quantities of chocolate." - Al Pacino in The Devils Advocate

Log in or register to post comments