Jump to content
Ketarin forum

AussieJim

Members
  • Posts

    17
  • Joined

  • Last visited

AussieJim's Achievements

Newbie

Newbie (1/14)

  1. I'm convinced there's a relatively simple, elegant solution, too :-). Just gotta find it! If I'm going to copy INI files, I need to know what they are, which means customizing for every app. I'm not convinced *.INI, *.CFG, *.DAT is going to catch them all, and in some cases, a CFG etc. file might not be user customizations, and the newer file might be wanted. I also thought about copying the installer to 2 locations, Current and Archived, and just installing over the top of the previous version in Current. That would usually leave previous .INI files intact, but some apps come with a blank or minimalist .INI file by default, which would overwrite my needed one.
  2. The problem with that approach is that it doesn't satisfy the first criteria above - a repository of portable apps, current and previous versions (all app files, not just installers). If I nuke the contents of the Current folder, I'm nuking any INI files in there too, that I may later need.
  3. Another alternative to consider is QuickTime Alternative. It's smaller, uses less resources, doesn't load unnecessary services, and doesn't call home. And to address your specific question - it's easily downloadable from FileHippo at http://www.filehippo.com/download_quicktime_alternative/.
  4. That's a lot of depth for someone who's swamped, appyface :-) Darn close. I want: A repository of portable apps, current and previous versions (all app files, not just installers) Automated installation of latest version where practical The same apps available across multiple machines across LAN and Internet (implementation detail: currently successfully done using Windows Live Sync.) In addition, I want to be able to invoke any of these portable apps via the Windows Start menu, not via a separate launcher (PStart, PortableApps, etc.). I've scoured documentation and forums. I've learned all about version scraping and regular expressions, and haven't met a download site yet that I haven't been able to reliably scrape version information from (though I'm sure they exist :-)). I've learned how to use Ketarin variables, and how to automate installation of .exe, .zip and .paf packages, using 7-zip, Universal Extractor and AutoHotkey. And I've seen some good ideas on logging, which I haven't implemented yet. I've even contributed an AHK script to near-silently install PAF files. I think I have a good idea of my objectives and constraints. The biggest (or at least, most pertinent) difference between our objectives is that I'm only dealing with portable apps, and I want to install/extract them at time of download. The other possible difference is how the installed apps are started - I want hem to be accessible the same way my non-portable apps are, via the Start menu. Because of the last requirement (Start menu), I need static shortcuts to the unpacked app's executable file. That means I need a path that doesn't change when new versions are installed, so can't include the version number in it. But I want the app's previous versions to include version# in their paths. That brings me back to my original question: when I'm about to download a new version of an app, how to determine the version# of the about-to-be-obsolete version currently installed, so that I can rename its folder with the version number. At this stage, I'm thinking of logging downloads to a log file, including version number. In a Ketarin pre-download command, I could read the last line of the log file, use a regex to extract the version number, store it temporarily in an environment variable, then rename the about-to-be-obsolete version's folder (i.e. move the app) with its version# read from the environment variable. But I'm wondering if there might be a smarter way to tackle this...
  5. Not at all, I appreciate your taking the time to try to help, appyface :-). Let me be more specific. My goal is to retain previous versions of all apps, at least until I can work out how their settings are stored and automate copying them across from previous version to new version as part of a customized post-download command. My tentative plan is to have an app structure that looks like this: C:\PortableApps \CCleaner \Current \v1.7 \v1.6 \v1.5 CCleaner.lnk (points to .exe in \Current folder) CCleaner.log \Everything \Current \v0.9 \v0.8 Everything.lnk Everything.log \Notepad++ \Current \... Notepad++.lnk Notepad++.log Each app has its own folder, which contains the latest version in a \Current subfolder; subfolders for previous versions; a shortcut to the most recent executable, which will always be in the app's \Current folder; and a log file for that app. My thinking is that this way I don't need to update the shortcut every time I update an app. But that means that before downloading a new update, I have to rename the \Current folder to its appropriate version number in a pre-download command, raising the question of where I'm going to get the version# from. I'd like to update the app's log file every time a new version is downloaded, with date and version number. In order to rename the \Current folder, I'd first read its version number from the log file. I haven't tried to do this yet, but was wondering how I'd store that info between the two pre-download commands - one reading the version number from log file, the second renaming the \Current folder. Hence my original question about variables. Perhaps there's an easier way. One alternative would be to use version numbers as the folder name for all versions, including the latest, as I always have version# accessible at the time of downloading. But then I'd need to update the shortcut, and the executable path and file vary greatly from app to app. Another possibility might be to read the version number from the Ketarin database, though I haven't looked into that (I store version# in a custom column). Perhaps I'm making this too complicated, or overlooking something simple. The end result I'm looking for is storing all previous app versions, ideally in a folder named after the version number; and having a shortcut that can always access the executable of the latest app version. Have your eyes glazed over yet? ;-) Cheers, -jim.
  6. As part of my post-download processing, I want to read a string from a text file, then use that string in the next post-download command step. To do this, I need to store the retrieved string within a variable. I haven't tried this yet, but presume I can just use a Windows environment variable, but was wondering if there's a better way to do this.
  7. Hi, In the Edit Application window, I'd love to have a text field to add random notes - e.g. why downloading app from this site instead of another, gotchas for this particular app, TO DO notes for this app ("Nee to automate copying INI file to new download folder"), etc. Thanks.
  8. First place to start is clicking the little arrow to teh right of the "Add new application" button, selecting "Import from online database...", then typing "TrueCrypt".
  9. Hi, I currently have a global variable {PARoot} which determines the base directory for my installs: {PARoot} = C:\Portable Apps. I also have a global variable {7z} which specifieds the location of 7z.exe: {7z} = C:\Portable Apps\7-Zip\App\App\7-Zip\7z.exe. What I'd really like is to use {PARoot} within {7z}'s definition: {7z} = {PARoot}\7-Zip\App\7-Zip\7z.exe. This way if the root directory changes, I only need to update one variable. I've found one way to do this: Make the {7z} variable local to every application instead of global, and declare it as a textual variable: {7z} = {PARoot}\7-Zip\App\7-Zip\7z.exe. This works fine, except that I have to declare it for every application. I can make it a default, but that still leaves it in 100 different places, if I ever change the location or need to troubleshoot. Is there any way to do this on a global basis? Thanks!
  10. Hi, Ketarin variables really seem more like constants than variables. What's the best way to set variables within commands? Windows environment variables seem to be an option – is this the way to go, or is there a better option? Thanks!
  11. Thanks for the suggestions, andreone and appyface. I found the solution. If anyone else is using Expresso - click the Design Mode tab, then right down the bottom, check the "Single Line" checkbox. Flo, looks like there are 10 .NET regex options: Singleline, IgnoreCase, IgnorePatternWhitespace, Multiline etc. How are these set in Ketarin? I know Singleline is set to On, but what about the others? I want to set Expresso to use the same rules as Ketarin... Thanks!
  12. Ah, that explains it - thanks Flo. Does anyone know of a way to change this behavior in Expresso? Expresso seems like a sweet tool for testing regular expressions, but I need a tool that behaves the same way as Ketarin. Alternatively, are there other free tools that behave the same as Ketarin?
  13. First off, great tutorial – thank you for taking the time to put this together and share, appyface. This has got me confused... I understand what you’re saying, but according to the .NET Framework Developer's Guide Regular Expression Language Elements, the dot (“.”) wildcard matches any single character except \n, where \n matches a new line. The only reason I care is that these are the rules used by Expresso, so your sample doesn’t work in Expresso, even though it works in Ketarin. This suggests that Ketarin doesn’t use the .NET regex engine. Am I missing something here?
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.