You are here

ready for testing: paf assistent

12 posts / 0 new
Last post
DatLicht
Offline
Last seen: 1 year 8 months ago
Joined: 2015-04-21 07:39
ready for testing: paf assistent

I wrote an awesome tool that will help you in your work paf'ing your apps.

Features:
- open an .exe and fill out the rest of a simple form
- automatically generate the structure, appinfo.ini, launcher.ini and extracted icon set.
- batch write inis, generate launcher and generate installer

Dependencies:
- Windows 7 or better
- dot.NET 4
- portableapps.com Launcher generator
- portableapps.com Installer generator

Limitations:
- One .exe file only (plus x64 file)
- the software has no brain. Use your own.
- if you try to paf your windows directory, you WILL mess up your system.
- did I say that the software is not idiot proof?
- not suitable for complicated projects like LibreOffice etc.

And the most important: it's BETA and comes with no warranties at all. Use at own risk.

You can download paf assitant at https://sourceforge.net/projects/pafassistant/files/

Feel free to use as long as you want.

[UPDATE]
just released version 1.0
This version comes with a powerful editor for appinfo.ini and launcher.ini, templating and some improvements (see README.TXT on the download page).

[UPDATE]
Version 1.1 released.
Many bugfixes and more improved editors. Should have all you need.

[UPDATE]
Version 1.2 released.
Some bugs fixed, new registry tab with lots of features (including .reg file import).

DatLicht
Offline
Last seen: 1 year 8 months ago
Joined: 2015-04-21 07:39
appendix

Btw. I already successfully paf'ed these apps with paf assistant:
- Bit-o-Matic BOM
- Caustic
- Cheat Engine
- CompSoft Bear
- CompSoft Bennett
- CompSoft Homedale
- CompSoft Seaside
- CompSoft Temple
- Nirsoft ProduKey
- No23 Recorder
- Otter Browser
- PassMark OSF Mount
- pestudio
- PixelLineal
- Resize Enabler
- SoftKey Revealer
- Universal Extractor
- Video to Video
- Virtual Dimension (yes it DOES work!)
- Visual Music
- Vivaldi Browser
- Windows Enabler
- Winroll

also:
- License Crawler

my next plans are:
- creating a senseful about text
- adding a first-run wizard
- maybe a better error handling (?)

depp.jones
Offline
Last seen: 1 day 18 hours ago
DeveloperTranslator
Joined: 2010-06-05 17:19
Nice start

I did a quick and dirty test run. The program is nice to use like a template, but very limited for portablizing an app. It generates a simple setup, but you can only display the appinfo.ini and the launcher.ini - I did not find a way to modify them. That is essential to make adjustments. Using the PA.c launcher does only make sense, if you give it some parameters. Otherwise it is not much more than using the naked base app... You don't need a PAF to integrate an already portable app into the menu.
It's nice to start with as it extracts icons and generates the help file etc. But you have to adjust the result, if you like to share it in the forums. Otherwise the PAF will be broken most of the time as it lacks essential functionality. This is definitely no app for the unexperienced!
There is no documentation and can only be used by trial and error.

I like this app, but there have to be a lot of refinements to make it really useful.

DatLicht
Offline
Last seen: 1 year 8 months ago
Joined: 2015-04-21 07:39
thanks for your feedback

> you can only display the appinfo.ini and the launcher.ini

That's true. My primary intention was to create an assisting app that generates at least running .ini files and a very basic set (help file, structure) for people who are no developers. If someone is a developer, who needs an extra tool to edit a text file? :-)

But on the other hand - it's a good idea, I will see if it's easy to implement a *useful* editor.

> Using the PA.c launcher does only make sense, if you give it some parameters

As I understood some forum posts here, many people just want to 'paf their apps to have them integrated in the cool and nifty menu. Sure, most applications, you could simply unzip on a folder of your usb stick, but if you're using this very often, you'll become mouseclick-insane.

> Otherwise the PAF will be broken most of the time as it lacks essential functionality.

hmmm. At least, I didn't get an error message (as long as I don't enter trash into the form).
Could you give me some examples what exactly wouldn't work?

> There is no documentation [...]

yep. that's already on my todo-list :-)

depp.jones
Offline
Last seen: 1 day 18 hours ago
DeveloperTranslator
Joined: 2010-06-05 17:19
Let's get philosophical ;)

Hi DatLicht,
I appreaciate your effort to make an easy to use tool to do the work. This is perfect for apps that are already portable by design. But, as mentioned before, there is no need to "paf" such an app as it will be integrated in the menu automatically if you simply put the app's folder in the PortableApp folder.
Just making a PAF without taking care for a real portablization still doesn't make it a PA.c conform package. You still need your brain (e.g. some experience) to put things in place, backing up registry entries, moving settings files and folders forth an back etc. even with some simple and declared "portable" apps. Otherwise it could leave things behind on the guest computer or even mess with already installed apps (think of overwriting settings on the guest computer). That is one aspect of creating a "broken" paf.
Count other aspects of PAFs and you see why I missed a possibility to edit the inis (automatic language switching, installer.ini entries, path replacements etc.). It is essential to make adjustments for most apps out there, even so called portable ones (most don't care for changing drive letters or loose some settings between session, some even mess up the registry and don't clean up...). There are some exceptions like piriform apps or nexus font f.i. but the inexperienced user does not know without testing.

That is one reason why there still is no easy and foolproof tutorial to make a PA.c conform app after all this years - and there have been some efforts to create one.

The ease of use of your app could most likely give the impression that making a functional paf is just a few clicks and that's it. That's completely ok for home use (even if the user should be warned that the result would be no real portable app) but this community has grown to some standards over the years, at least for apps in beta (called development tests with time to be tested by a user base before declaring it as ready for release). And that still need some experience with the tools. They are easy to learn and powerful to use. I for myself think that the "low" learning curve for the tools corresponds to the expereince needed to verify the functionallity of the portablization.

That said, your tool could be great to simplify the start of making an app portable by PA.c standards. It just lacks some flexibility at this point but it's the first beta, so it's ok. (the first thing I found when I tried it yesterday was the lack to add another donation button to the help file automatically - that should be possible to make an official PA.c app attractive for the base app's developer). Don't get me wrong, I don't want to criticize your effort to make an easy app. It definitely lowers the hurdle to start making PA.c conform apps. With some refinement it could become a very useful tool, maybe the one that I was looking for some years ago. I could give some input, if you like (hopefully others, too Wink )

DatLicht
Offline
Last seen: 1 year 8 months ago
Joined: 2015-04-21 07:39
okay, let's make an awesome tool ;-)

Thanks again for your very detailed feedback.

[...] there is no need to "paf" such an app as it will be integrated in the menu automatically if you simply put the app's folder in the PortableApp folder [...]

The funny thing is that many people demand a 'portable' version of software that can be simply unzipped. With my tool, it can flatten the way for that. ;) Other software MAY be portable but is only downloadable with an installer (why so ever) or have "special" installers with unwanted bundled software. So it could make sense to 'paf an already portable software.

But however, I think: let's make an awesome software. Surely, there are many features still missing, no question. It's also not easy to keep the GUI halfway usable and not tooo complicated. This is the hardest point for me, I think (and don't forget that the possibilities of built-in windows form elements are a bit limited). Surely I could add "fifty" more input fields, but then you need a 40" screen... ;-)

The best way to go is adding feature by feature, one after each other. Otherways, things will get too complicated. The next release will have these new features:
- edit appinfo.ini and launcher.ini
- import appinfo.ini and launcher.ini (at least try to...)
- inline help with explaination what you currently try to edit

In one thing, I absolutely agree with you:
The software isn't bulletproof, so you still need your own brain. That's a feature that I will never change. ;-)

to your points:
[...] lack to add another donation button to the help file automatically [...]
huh ... okay. HTML editing in VB is a hard job and not that trivial; that's why I used a ready-edited template. Do you have an idea how to arrange all the URLs in a way that a) fits in a toolbar and b) is easy/intuitive to use? The three I already built-in consume more space that I want yet...

[...] automatic language switching [...]
What exactly do you mean? The thing is, that the language is automatically read out by the assembly information, but Windoze returns it localized (i.e. not ISO-standard "FR", not "french", but "Französisch" on a German Windows). It's really hard to programatically guess what language this could be; I used a substitution csv so far and try to find a match.

[...] installer.ini entries [...]
hmmm. Won't get this file automatically created? Do you have a spec for it?

[...] path replacements [...]
huh, paths are really cruicial in dot.NET. You even don't have a built-in capability to make two paths in relation to each other (i.e. if you have C:\foo\bar\blah.exe and C:\foo\blah\myfile.doc, you cannot make simple relations like ..\blah\myfile.doc with onboard methods...). But maybe this will be still possible with String operations. Could you give an example?

[...] I could give some input, if you like [...]
That would be great. A professional 'portable maker' meets a scripter/developer hehe... :)

depp.jones
Offline
Last seen: 1 day 18 hours ago
DeveloperTranslator
Joined: 2010-06-05 17:19
Ruhig, Brauner!

Ruhig, Brauner! Wink

It's great that you are so enthusiastic to make this tool. But I think, before you continue to add more an more features you should try to become familiar with the background of portable apps (and those according to PA.c guidelines in particular). Please correct me, if I'm wrong, but some of your statements (like your first reply about pafing) imply, that you don't know, what the PA.c Launcher is used for, apart from just launching the app. I don't want to go too far, but it is mostly used, to deal with all the actions that have to be taken, to make an app portable and compliant the guidelines, see: What Portable Means. It handles quite a lot - replacing drive letters or paths that change, when you use the flash-drive at another pc, automatic language switching depending on the one that the menu is set to, moving settings files either from the apps own folders to the data folder (used for backup reasons) or from the registry or a local user folder to the flashdrive etc. So the deal is to see the PA.c platform as a whole and not as single components. Menu, Launcher and Installer all depend on each other in some way.

To come back to pafing apps: Just creating a .paf does not make an app portable in any way. Then you would better just zip the app's folder instead, as then anyone could open it directly...
Most apps that come as portable version or are protable by design (more or less sometimes) come as archive (zip or 7z) and can be run off the extracted folder directly, so there is no need to paf these apps for personal use. And putting an app, that is not portable, simply in a .paf to copy it around is exactly, what is not to be done, because this normally creates a more or less broken app.

In short: My first advice for you, is to go through the Development section and read some of the specs and especially the launcher and installer manuals. No need to fully understand, what is written there, but it would give some impression, what the launcher has to do and what it has to be told by the launcher.ini entries. If questions arise, feel free to ask. Smile

DatLicht
Offline
Last seen: 1 year 8 months ago
Joined: 2015-04-21 07:39
new version of .paf assistant

Okay, here we have a new version with very improved editors.

The changes in Version 1.1:
[New] icons: implement 48px icon
[New] icons: implement 128px icon
[New] icons: 48x48 and 128x128 px icons are optional and deleteable
[New] icons: implement copying from/to neighbor size
[New] images: splash.jpg: implement splash.jpg
[New] exporter: implement splash.jpg
[New] files tab: both editors now have a syntax highlighting
[New] templating: allow to attach custom tags to tags
[New] browser: if .ini file is opened, user can takeover all into to the editors
[New] browser: now, user can takeover parts into the editors

[Change] icons: move icons to files tab
[Change] icons: icon-extract .exe is no more mandantory
[Change] icons: re-worked check for presence (moved to Control.Tag, more reliable)
[Change] files tab: re-work filling language combobox (from spec file)
[Change] files tab: re-work filling category combobox (from spec file)
[Change] language: re-work language guessing feature (maybe use separate .html for that?)
[Change] tidy up: create one central function for file open
[Change] browser: re-work text selection without windows clipboard
[Change] browser: selection-related context menu items only showing when text selected

[Fix] no more duplicate history entries
[Fix] output of dependencies is invalid. Should be empty, but is "none".
[Fix] no more duplicate questions when inserting a line from menu

I think, this is a good step for power users that want to tweak all out of the PA platform, and also for new users that want a quick step into the materia. The editors aren't bulletproof, but have also a basic syntax check. Ah, and btw. you can import registry files to launcher.ini file. I think, this is the best version you can really work with Smile

What's gonna be next?
I'll test around with next release, if there's a senseful way to add a complete .ini import for projects that cannot be re-distributed. Unfortunately, this isn't that trivial as it seems.

depp.jones
Offline
Last seen: 1 day 18 hours ago
DeveloperTranslator
Joined: 2010-06-05 17:19
Wow, that's a nice upgrade -

Wow, that's a nice upgrade - the app is maturing. I did a quick test and am impressed, what you have added. I did not have time for a thorrow analysis, but maybe I will check with one of my projects, if pafassistant is an option to ease my dev workflow. I'll give some feedback, when I have more time.

Dan Carroll
Dan Carroll's picture
Offline
Last seen: 2 months 3 weeks ago
Joined: 2015-10-26 08:58
Interesting App

Are continuing development? I am interested in any updates. I will be trying it out.

Dan "FloriDan" Carroll
Just an old hacker having fun.

DatLicht
Offline
Last seen: 1 year 8 months ago
Joined: 2015-04-21 07:39
In general: yes.

In general: yes.

As I'm busy at the moment with other projects and the app reached a useful level, the development got a little out of focus. But I think, I'll upload the code to Github somewhen.

If you have any ideas for new useful features, let me know.

DatLicht
Offline
Last seen: 1 year 8 months ago
Joined: 2015-04-21 07:39
Okay, just uploaded the

Okay, just uploaded the longer waiting version 1.2 with improved registry section.

Log in or register to post comments