vrijdag 23 januari 2009

UITWERKING: Nieuwe technologie bestuderen (2)

Hallo iedereen,


Na een tijdje afwezigheid, te danken aan examens, stage en last but not least een defecte adaptor van mijn modem die ervoor zorgde dat ik een 2tal weken enkel bij mijn vriendin op internet kon, post ik hierna mijn bevindingen in verband met het maken van portable sofwtare.


Aangezien er in het nederlands slechts weinig te vinden is over deze nieuwe technologie kwam ik na een tijdje zoeken bij de engelstalige benaming, namelijk portable apps.

Bij het creëren van protable apps moet je rekening houden met een aantal zaken. Zo kan niet alle sofware portable gemaakt worden. Bij ingewikkelde programma's die veel services installeren of gebruik maken van je register wordt dit aanzienlijk moeilijker, evenwel onmogelijk.

1 website handig bij het maken van Portable Apps is portableapps.com/

Voor je Portable software zal maken moet je zeker gaan nadeken over de volgende zaken:
  • Portable apps moeten bruikbaar zijn voor iedereen. Het is belangrijk dat iedereen deze Apps kan gebruiken en uiteraard moet de sofware nuttig zijn. Het nut van bijvoorbeeld een portable internet explorer is duidelijk. Je kan deze overal meenemen en je hebt steeds je eigen favorieten ter beschikking.
  • De licentie. Ligt het programma onder een bepaalde licentie dan mag je dit niet zomaar verspreiden wat ons terub brengt bij het vorige item nut. Want als je iets wilt verspreiden wat niet mag wat is het nut daar dan van?
  • Je moet de software die je portable wil maken goed analyseren. Slaat het programma bestanden op in Documents en Settings, gebruikt het een INI file, ....


HET MAKEN VAN PORTABLE APPS

(Dit laat ik even in het Engels staan, omdat dit vrij ingewikkeld is te vertalen)
  1. Use the search box to find out if someone's done the work or some of the work for you. Search PortableApps.com.



  2. Become familiar with the launchers available. For instance:
    X-Chat Portable redirects the Path, and GTK directories.
    Notepad++ Portable Moves files and then adjusts them so that any open files from your flash drive will now open on your new host.
    7-Zip Portable deals with the registry entries made by 7-zip.
    PNotes Portable Passes a command line variable to the program.



  3. Determine the license. Is it OSS or another type of license? If its Open Source Software, you can post all of the launcher and the program on the forums. Since PortableApps.com is dedicated to OpenSource software, its against the forum rules to post a piece of software that contains closed source (even if you are allowed to redistribute) software. If its closed source, well, you can post a launcher, similar to what I've done here, only. Why is this first? Well, you have to decide if its worth the work.



  4. Determine the programing language. Why? Well, you have to be careful. Is it done in:
    .Net? Sorry. While some don't care, alot of people here despise .Net, as its not installed on all computers. See this link For a whole discussion on the subject of .Net.
    Java? As I understand there's the Java Portablizer, but there is not yet an Open Source JRE. So use of Java applications is somehow limited.



  5. Get the tools. Load up- you'll need them.
    I whole heartedly suggest the use of HM NIS Edit (Portable) Select either the download with NSIS included, if you don't intend to download it separately, or without if you do. It adjusts properly in both occasions.
    Regshot. which is used to figure out what changes a program made during the install process.
    Alternately, you can use Process Monitor to figure out what registry entries its reading.
    NirSoft RegfromApp is a small freeware utility that allows you to specify a specific process to monitor. You can even launch a process with it and monitor those specifically. It produces a nicer output of what registry entries the program has modified.
    I also suggest picking up Notepad ++ Portable. Just in case.
    To handle making the icons, use something like IcoFx



  6. Do your research. Read up on these topics in the forums:
    The PortableApps Format Specifications
    The Official InstallerFeel your head is about to explode? Mine to, writing all this html. There's More :D



  7. Download your program. If you have keyboard loggers, malware protection or anything that runs in the background, consider turning them off before taking a regshot. Now, fire up regshot and take a regshot of the computer by scanning the C drive, more on that in a minute, before installation. Go have a cup of coffee or a can of Mountain Dew. Don't touch the computer! You'll get extra registry entries.



  8. Install your program and run it a couple of times. Make sure you do this from a clean install. If you don't, you may have skewed results. Do NOTHING else during this time



  9. Take second regshot and then compare the results. Save it a html, it produces a nicer printout then .txt



  10. Figure out where the program is saving files. Check C:/Documents and Settings/UserName/Application Data for %appdata%. If you scan the entire C:\ Drive with regshot, those changes should show up.



  11. What to do with registry entries:
    HKCU:Regshot will show a HCKU modification as HKU\Random Numbers\whatever. Look for those in HKCU\Software\ and handle them in NSIS as HKEY_CURRENT_USER\Software\Whatever.
    Useful Entry: HKU\S-1-5-21-1060284298-823518204-725345543-1003\Software\Texas Instruments\TI Connect\StartUp\.
    Useless: HKU\S-1-5-21-1060284298-823518204-725345543-1003\Software\Microsoft\Windows\ShellNoRoam\MUICache
    HKLM:HKLM is a branch of the registry that cannot be modified by someone with a Limited account- just an Administrator. Handle them by double checking that they are needed. Often, something like InstallDir: whatever can be ignored. Else-if those entries really really are needed, you will need to check that the launcher can do it, then launch the software. If you don't have the rights, you'll use a message box to say so and terminate the launcher. Handle them in NSIS as HKEY_LOCAL_MACHINE\Software\whatever
    HKU: You can ignore these.



  12. Find a base launcher that deals with those issues.



  13. Adjust the launcher to reflect the changes you need made



  14. Compile, test, and adjust



  15. When it works, drop a note with it in the Beta Testing Forum., using this format. Let us have at it. We'll be glad to :D
--------------------------------------------------------
Voila dit is een volledige boterham. Wat kan je hieruit leren: Portable apps maken is niet zo eenvoudig als het lijkt....

Gellukig bestaan er voor de eenvoudige software ook programma's die dit allemaal voor jou doen. Ik vond zo een programma op de volgende pagina:
portableappscreation.googlepages.com


Wat je niet Portable kan maken met het volgende programma:

If the program requires a driver, it cant be portable. If the program has files in the windows appdata or the other system dir's it cant work If it needs to register a dll/ocx file, no go.

Oké, hierna volgen de verschillende stappen die ik gedaan heb na het dowloaden van het programma.

Als eerste moet je het gedowloade programma uitpakken.

Nadat je het programma gestart hebt zie je rechts onderaan volgend icoon:



Als je hier rechts op klikt zie je volgend menu. Zoals je kan zien is er een volledige GUIDE in het programma inbegrepen.





Als je deze handleiding volledig volgt kan he portable apps maken. Dit lukte voor mij voor het programma: PAINT.NET


Geen opmerkingen: