At this point I'm just looking into making an application Portable. Moving everything out of the registry and back into the old .ini file format is daunting, but probably doable. However, this is a VB6 application that installs and registers the following files to \System32 if needed.
I can find no provisions for files normally installed to system folders like this. Are we expected to just plunk these files in the directory, with the application, assuming windows looks there first?
Usually if you put these in the same folder of the application it will work, but having it installed on the system will make it available to all applications (which is why they are called shared libraries).
However, I'm not sure if these can be distributed/bundled with a PortableApps project (at least hosted by SourceForge) due to the licensing/dsitribution restrictions by Microsoft.
>...but having it installed on the system will make it available to all applications...
Of course. That's why my Stand Alone installation program installs them as shareable. But, doesn't that violate the "Portable" rules? My installation could modify files shared by other programs, and not put everything back when the Flash Stick is removed. Also, can PortableApps do this? Is it any less legal than our current installation installing the re-distributables? Most systems Win-2k or newer already have them, but we can't count on it.
I hope you don't mind the dumb questions, but I'm really new at this, and just starting to investigate it. I wrote the Virtual Keyboard at http://cnt.lakefolks.com and we're getting requests to make it portable, so a disabled person can "carry" it to the library or wherever.
BTW: Is there any way to get email notification of activity on this thread on this forum? I couldn't find it.
not really but there is this:
check it out
Please search before posting. ~Thanks
The msvbvm60.dll and COMDLG32.OCX just have to go in the same folder as the application. As for VB6STKIT.DLL, that file is part of the Visual Basic 6 Setup Toolkit (S=Setup, TKIT=ToolKIT). It is purely there for the uninstaller.
Ok. I guess the support libraries go in the App folder then. Duplicated and not shared.
>As for VB6STKIT.DLL, that file is part of the Visual Basic 6 Setup Toolkit
>(S=Setup, TKIT=ToolKIT). It is purely there for the uninstaller.
You correct, for the most part, but VB6STKIT.DLL contains the only good way for a VB App to creat "Shortcuts" on the Desktop, Start menu, Startup group, etc.. Hence, we make sure it's installed, even though we don't use the VB6 installer.
I think though, the "portable" version should probably disable (disallow) creation of those kind of shortcuts anyway, even though they can be very handy.
If it is used by the VB app and not just by the VB installer, then it can go in the app folder aswell. Although, the creation of the shortcuts should be optional, otherwise the app isn't really portable-compatible.
Makes sence. The shortcuts *are* or course optional now. But, can I allow a PortableApps user to create a shortcut, on the Desktop, that runs my Application? As soon as he pulls out the Flash Drive, the shortcut points to a program that's not there for anyone else.
Things get tricky fast.
Well, as long as the app is being run via PAM or a similar app, there should not be any need for the shortcuts. There is also the possibility that an extra app could be used to check if the drive is inserted/mounted which removes the shortcut if the drive has gone.
Correct. The shortcuts only launch the app or start it at bootup. Not practical for a Portable Drive.
>There is also the possibility that an extra app could be
> used to check if the drive is inserted/mounted which
> removes the shortcut if the drive has gone.
Would require a service running in the Background. Probably overkill.
Thanks for the idea though.
It doesn't necessarily have to be a service. Just an extra app that gets copied to the %temp% folder and run is all it takes.
It depends on whether they are marked by their authors as "Redistributable". Try searching on the Microsoft website to see if they are.
e.g. gdiplus.dll (GDI+), msvcp60.dll (Microsoft Visual C something 6.0), msvcp71.dll (MSVCP 7.1), msvcr60.dll (MS Visual C Runtime 6.0), msvcr71.dll (MSVCP 7.1) are all redistributable. BPBible installs GDI+ on Windows 2000 or earlier, and BPBible Portable includes it in App\BPBible. MSVC[PR]71.dll are both required for both versions. It all depends on what you need, and searching around to see when it's needed, and making sure that it's legal to distribute it. Redistributable libraries are allowed to be bundled here. Look at most of the apps...
I am a Christian and a developer and moderator here.
“A soft answer turns away wrath, but a harsh word stirs up anger.” – Proverbs 15:1