This has been released. Thanks for your help testing!
https://portableapps.com/news/2008-03-14_-_infrarecorder_portable_0.44.1...
I've just posted a pre-release of the fix for InfraRecorder Portable 0.44.1. For the unfamiliar, it's a full-featured CD and DVD burner. It was originally released last night but after reports of a couple bugs, Travis decided to pull the release and asked me to take a look at it to see if I could work it out.
Bug Details: The original release was writing files to Documents and Settings\Travis\ due to an error in the default Settings.xml file. The Rev 2 release was using a hard coded C:\InfraRecorderPortable directory for temp files which can't be guaranteed to be writeable (depending on permissions) or even exist (if Windows is on D and there is no C drive, for instance).
Code Fix Details: It was a bit messy as the Settings.xml is encoded in UTF-16 Little Endian, which none of the built in NSIS functions support. I was able to use a bit of an ugly hack to make it work by converting the file back and forth to ANSI. The launcher now creates a subdirectory in temp, sets InfraRecorder to use it on launch and deletes it on exit. It also automatically adjusts your last explorer path and the path to the language file. And it will work with the PortableApps.com Documents folder by default in the upcoming platform release.
So, here is the test of Revision 3:
Download InfraRecorder Portable 0.44.1 Revision 3 Pre-Release 1 [2.9MB download / 6.1MB installed]
Please test this out with language settings, switching PCs, burning a disc, etc as soon as you can so we can get this fixed release out today.
UPGRADE NOTE: If upgrading from a previous release, please delete your InfraRecorderPortable\Data directory as that file has incorrect paths in it. I'll have the installer for the final version do this automatically.
Thanks,
John
In the program folder, I see a lots of different languages but how can I change the language of the program in the program?
There's a note about that here:
https://portableapps.com/apps/utilities/infrarecorder_portable
Language Note: To change InfraRecorder Portable's language, launch it and select any option from IR Express to open the main InfraRecorder window. Then select Options and Configuration from the main menu. Select the language tab and choose your language of choice. You'll need to close and reopen InfraRecorder Portable for the change to take effect.
Sometimes, the impossible can become possible, if you're awesome!
You can change the french translation of november 12th 2007 by the new one (february 23th 2008).
I downdloaded it, install it, run it, change language, restart it, burn a Data CD plenty of just JPGs...
With the program closed I couldn't find anything left behind... I didn't check th eregistry but its supposed that I have to look for a folder left some place...
I looked on C:\user\my user name\ nothing
I looked on C:\user\my user name\temp nothing
I looked on C:\ nothing
I looked on D:\ nothing
If a packet hits a pocket on a socket on a port,
and the bus is interrupted as a very last resort,
and the address of the memory makes your floppy disk abort,
then the socket packet pocket has an error to report
thank you so much john to the quick response to this this morning. i would never have thought there would be so many problems with something that the author labeled as "portable" in the first place. i wonder if it would have been better to start with the installable version. i'm glad you were able to make the xml thing work even if you think it's a bit messy since i had no clue how to edit an xml file. i'll test it out fully when i get home later.
You're welcome, Travis. Don't worry, mistakes happen. Sometimes things make it through beta and testers miss them, too. We just have to handle them well.
The portable version of InfraRecorder isn't that portable as the settings file uses hard coded paths to the temp directory, shell directory (last open in the InfraRecorder Explorer) and language file. You'd have to manually set these on each launch with the standard portable version, which isn't really that portable.
I actually didn't use the XML functions to get this working. I used ConfigRead and ConfigWrite, two functions that are part of the text functions included with NSIS. They work in a pinch for well-formed XML files with unique elements (as Settings.xml is). The trick was that it was encoded as UTF-16LE which I used the Unicode plugin (from the NSIS website) to convert to Ansi and then back so I could alter the file. Like I said, it's a bit messy, but it works well and gets us portability of the temp directory, shell directory and language setting making it truly multilingual and truly portable.
Sometimes, the impossible can become possible, if you're awesome!
Windows Vista Home Premium pt-PT without SP1:
Nothing Written to C:\
Nothing Written to D:\
Nothing Written to E:\
Nothing Written to C:\Users\
Settings.xml written to InstallFolderOfInfraRecorder\Data\settings
Only Opened Infra-Recorder and have chosen a random option, seems to work fine.
Blue is everything.
The Travis folder that was created is not created. If that was the only bug, then it's fixed.
"In three words I can sum up everything I've learned about life: it goes on." -- Robert Frost
"In three words I can sum up everything I've learned about life: baby ain't mine." -- Adam Holguin
At all starts, it asks the device's letter. Is it normal?
There's no devices.xml in the directory ..\data\settings
I just created a new audio disk and couldn't find anything left on the either my c: or d: drive afterwards.
XP SP2, clean install, creates its temp folder in %TEMP% and cleans up when it is done.
Kinda fun to watch it detect the 'CD Writer' that is part of my U3 flash drive as well as the optical drive in the machine.
Everything looks good.
windows xp sp2 german (full patchted)
fresh install
burn data cd
burn audio cd
no errors
No problems whatsoever. Nothing left behind, works fine.
"Programming today is a race between software engineers striving to build bigger and better idiot-proof programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning." - Rick Cook
beta testers, please test if it leaves anything on the second computer it runs on, as this was also a problem to overcome. in the meantime, John, right now i'm trying to use the xml plugin for nsis since you think the method you're using an ugly hack. i'll post back if i've made progress.
I think we're ok releasing as is. I don't think the XML plugin handles unicode either... and that's why this is ugly. So, I'd think we're ok releasing this as-is.
By all means keep playing with the XML plugin. We can add it in when we update the apps for the new language handler in the platform even if a new version of IR hasn't been released.
You want to write anything specific release notes wise other than the feature and intro and an explanation sentence of the bug?
Sometimes, the impossible can become possible, if you're awesome!
i don't want to write anything specific, but your name should be under the author of the app since you did a lot of the work now. idk if it'd be professional but ideally it'd be nice if i could apologize for any inconveniences this has caused. ok well i'll halt my xml work now and test it in its existing form. if i get the xml stuff to work it can go it 0.45 since it should be out soon anyways.
I'd recommend a description of the files left behind in the original release. A mention in the What's New In This Release would do that. Something like: "This new release corrects a bug where InfraRecorder Portable may have left some configuration and temporaryt files within C:\Documents and Settings\Travis\Application Data and C:\InfraRecorderPortable. It also has support for remembering the last location you used for source files and the language you selected as you move PCs"
And for the apology, a note like "Our sincere apologies for any inconvenience caused by the bug in the earlier release" in that same section would suffice.
The line on the page with your name is for the developer/maintainer, which is still you. It's still my code from before, too, but you're the one responsible for the app still, so your name still goes on it. If you'd like to mention that I contributed the fix in the What's New section of the announcement, that's fine.
Sometimes, the impossible can become possible, if you're awesome!
i just sent an email with the text before i saw that you updated your reply. Please add in that you contributed the fix to the text. also i tested it on multiple machines and the xml file gets changed and works great.
Heh, ok. But it feels really odd adding the phrase "Thanks to John T. Haller for the code fix to update the settings file." to your text myself.
Sometimes, the impossible can become possible, if you're awesome!
It's all alright now, no files or folders left on my PC and the settings XML in the Default Data Dir seems to be alright, too,...
Only one question left in my mind: What will hppen with the PortableInfraRecorder Dir in the Users Temp Folder, when InfraRecorder or the Host PC crashes? In this case the Folder will not be deleted, right? In my oppinion a left folder in the Temp Dir is not a big problem, cause the Windows Drive Cleaning Program or any Temp Cleaning Apps will delete it.
Will a restart of InfraRecorderPortable fix this and delete the folder if it was left due a crash of the App or the PC?
Sory, sometimes i think too much but i thought it was an interesting question,...
its ok if only the main program crashes and not the launcher cause the launcher will clean it up regardless how the main program was closed. But if you yank the drive while an App is running or the PC crashes then things will get messy
"What about Love?" - "Overrated. Biochemically no different than eating large quantities of chocolate." - Al Pacino in The Devils Advocate
thx for your answer - it was not clear to me that the launcher is waiting for Main App to delete the folder - but now i know
@travis: good to know that the folder will be deleted, if the app is running the next time,...
But nevertheless good work keep up the good work with InfraRecorder Portable and don't worry: mistakes could happen - no Problem, I'm glad it is fixed and this App will now released as an official Portable App. Congratulations to your first Portable App, Travis
if you yank your drive or the pc crashes, the directory will be left, but if run on the same login again it should be deleted on exit next time it's run. i think the talk about what happens if the drive gets yanked etc is more of an issue related to all the apps, not just this one.
A restart of InfraRecorder Portable will fix the issue.
The 2nd new platform release will also clean it up on the next PC reboot in most cases as well (the TEMP directory will be managed in the 1st new platform release).
Sometimes, the impossible can become possible, if you're awesome!
ok yeah the xml plugin doesn't load the xml file properly the way it is. looking at your code i don't think it's a "hack" it looks pretty good. just wondering, is there any significance to the large spaces before the xml elements TempPath etc?
I thought so on the XML. I think the fix is as good as it gets. It felt a little messy, though.
And the spaces are tabs. They're in the Settings.xml.
Sometimes, the impossible can become possible, if you're awesome!