Rufus - USB Formatting Utility
Re: Rufus - USB Formatting Utility
I tried this today in a real world environment and I have to say goodbye UNetbootin & WinToFlash, hello Rufus! This application was so easy to use and it worked really well and despite the fact I will probably only use it once or twice a year I really hope they continue development and add some additional features e.g. VHD support of some description amongst others.
Re: Rufus - USB Formatting Utility
Its funny what text you have on your website:
Or later? You dont know?License
GNU General Public License (GPL) version 3 or later.
Re: Rufus - USB Formatting Utility
I think the reference is to the fact that there may be a version of the GPL in the future that the developer wants his code to get applied to. At this writing, v3 is the latest version.mik.y wrote:Or later? You dont know?License
GNU General Public License (GPL) version 3 or later.
Re: Rufus - USB Formatting Utility
The latest Rufus version (V1.3.0) is not portable. It writes "CommCheck" and "UpdateCheckInterval" values to the registry at HKEY_CURRENT_USER\Software\Akeo Consulting\Rufus. I think that it also modifies group policy to do that but am not 100% certain. Btw, anyone knows what the "CommCheck" registry key is for?
Re: Rufus - USB Formatting Utility
That's interesting. I would like to know too.I am Baas wrote:The latest Rufus version (V1.3.0) is not portable. It writes "CommCheck" and "UpdateCheckInterval" values to the registry at HKEY_CURRENT_USER\Software\Akeo Consulting\Rufus. I think that it also modifies group policy to do that but am not 100% certain. Btw, anyone knows what the "CommCheck" registry key is for?
Re: Rufus - USB Formatting Utility
The source code doesn't offer much and I couldn't find REGKEY_COMM_CHECK being used again apart from being defined, weird.
Re: Rufus - USB Formatting Utility
Found it HERE: - "Initial update check setup"
commcheck is the DWORD GetTickCount (wiki), a part of the boolean function SetUpdateCheck.
There is a hack included in the code:
If you run rufus.exe (no version in filename/first run) you will not get the update settings prompt and default values are applied.
If you run rufus_v1.x.x.exe (version in filename/first run) you will get the update settings prompt where you can set preferred values.
You can also get to the same update settings prompt/dialog as follows: About... > Updates
Code Function Snippet:
~Ruby
commcheck is the DWORD GetTickCount (wiki), a part of the boolean function SetUpdateCheck.
There is a hack included in the code:
If you run rufus.exe (no version in filename/first run) you will not get the update settings prompt and default values are applied.
If you run rufus_v1.x.x.exe (version in filename/first run) you will get the update settings prompt where you can set preferred values.
You can also get to the same update settings prompt/dialog as follows: About... > Updates
Code Function Snippet:
Code: Select all
BOOL SetUpdateCheck(void)
{
BOOL enable_updates;
DWORD commcheck = GetTickCount();
notification_info more_info = { IDD_UPDATE_POLICY, UpdateCallback };
char filename[MAX_PATH] = "", exename[] = APPLICATION_NAME ".exe";
size_t fn_len, exe_len;
// Test if we have access to the registry. If not, forget it.
WriteRegistryKey32(REGKEY_COMM_CHECK, commcheck);
if (ReadRegistryKey32(REGKEY_COMM_CHECK) != commcheck)
return FALSE;
reg_commcheck = TRUE;
// If the update interval is not set, this is the first time we run so prompt the user
if (ReadRegistryKey32(REGKEY_UPDATE_INTERVAL) == 0) {
// Add a hack for people who'd prefer the app not to prompt about update settings on first run.
// If the executable is called "rufus.exe", without version, we disable the prompt
GetModuleFileNameU(NULL, filename, sizeof(filename));
fn_len = safe_strlen(filename);
exe_len = safe_strlen(exename);
if ((fn_len > exe_len) && (safe_stricmp(&filename[fn_len-exe_len], exename) == 0)) {
uprintf("Short name used - Disabling initial update policy prompt\n");
enable_updates = TRUE;
} else {
enable_updates = Notification(MSG_QUESTION, &more_info, APPLICATION_NAME " update policy",
"Do you want to allow " APPLICATION_NAME " to check for application updates?\n");
}
if (!enable_updates) {
WriteRegistryKey32(REGKEY_UPDATE_INTERVAL, -1);
return FALSE;
}
// If the user hasn't set the interval in the dialog, set to default
if ( (ReadRegistryKey32(REGKEY_UPDATE_INTERVAL) == 0) ||
((ReadRegistryKey32(REGKEY_UPDATE_INTERVAL) == -1) && enable_updates) )
WriteRegistryKey32(REGKEY_UPDATE_INTERVAL, 86400);
}
return TRUE;
}
Last edited by Ruby on Tue Dec 31, 2013 12:40 pm, edited 2 times in total.
Re: Rufus - USB Formatting Utility
Thanks Ruby.
Re: Rufus - USB Formatting Utility
+1guinness wrote:Thanks Ruby.
Re: Rufus - USB Formatting Utility
@Ruby: my thanks, too.
Couldn't this be summarized for the TPFC entry?
Couldn't this be summarized for the TPFC entry?
Re: Rufus - USB Formatting Utility
@Ruby
Many thanks!
Many thanks!
Re: Rufus - USB Formatting Utility
The default value is "Daily Check for Updates"... Rufus will call home a quick minute after having been launched. The "CommCheck" and "UpdateCheckInterval" values are written to the registry no matter what.Ruby wrote:If you run rufus.exe (no version in filename/first run) you will not get the update settings prompt and default values are applied.
I'd rather run rufus_v1.x.x.exe, get the prompt, decline, do what needs done, press Alt + R (this will delete the registry entries), exit Rufus.
There is one thing I am not sure of yet... does it modify Group Policy as well?
Edit: Just discovered Rufus Portable... will test later.
Re: Rufus - USB Formatting Utility
I also noticed that:
I am not going to rant, I am not going to rant, I am not going to rant... fukc that, the hell I am... JohnTHaller edited the db entry for Rufus just before the release of their portable version... this update screams conflict of interest... actually, maybe I should stop, but I do think that he should refrain from updating db entries and leave this task to other TPFC members.
Emphasis mine.2013-01-10 15:58:38
Updated by JohnTHaller
Writes settings to:Windows registry
Stealth:No
Stealth (details): All settings stored in registry
I am not going to rant, I am not going to rant, I am not going to rant... fukc that, the hell I am... JohnTHaller edited the db entry for Rufus just before the release of their portable version... this update screams conflict of interest... actually, maybe I should stop, but I do think that he should refrain from updating db entries and leave this task to other TPFC members.
- JohnTHaller
- Posts: 717
- Joined: Wed Feb 10, 2010 4:44 pm
- Location: New York, NY
- Contact:
Re: Rufus - USB Formatting Utility
I edited it after the discussion on here stated that it wrote to the registry. I tested it out and the settings it maintains between launches are saved in the registry. So, my edit is accurate: settings are saved to the registry and you can't make it save any settings portably. Not sure why you wanted to go back and alter the entry to its current incorrect state where you say it writes settings to: "None". Rufus clearly writes its settings to the registry.I am Baas wrote:I am not going to rant, I am not going to rant, I am not going to rant... fukc that, the hell I am... JohnTHaller edited the db entry for Rufus just before the release of their portable version... this update screams conflict of interest... actually, maybe I should stop, but I do think that he should refrain from updating db entries and leave this task to other TPFC members.
Separately, after I read the discussion, I figured I'd hack together a quick version to make it portable (moving the registry values on and off the local machine and backing up and restoring any existing ones) so people could actually use Rufus portably and not have it ask to auto-update on every launch on a new machine and leave that behind on the local machine. We've had a few requests for Unetbootin and similar utilities at PortableApps.com and, reading the advantages Rufus has on its homepage like the speed improvements, I figured it would be a good app to release. Especially since it was just a quick 15 minute package to create.
For what it's worth, I didn't switch the entry from Rufus to Rufus Portable even though it would fit the criteria based on the past outlined guidelines. Nor did I even add Rufus Portable as an Alternative in the listing. I was going to add a note in this thread about the release to see if some folks here would be interested the way folks at PortableApps.com were/are. You're free to keep the listing incorrect and to ignore Rufus Portable if you wish. I just thought folks would appreciate a portable version of Rufus.
PortableApps.com - The open standard for portable software | Support Net Neutrality
Re: Rufus - USB Formatting Utility
Rufus does not store any settings besides the "Check for Updates" ones. Your edit implied differently. As for the DB entry, it clearly states that Rufus writes "Check for Updates" settings to the registry but it was convenient to omit that, was it not?JohnTHaller wrote:I edited it after the discussion on here stated that it wrote to the registry. I tested it out and the settings it maintains between launches are saved in the registry. So, my edit is accurate: settings are saved to the registry and you can't make it save any settings portably. Not sure why you wanted to go back and alter the entry to its current incorrect state where you say it writes settings to: "None". Rufus clearly writes its settings to the registry.
The same as you were about to notify SYSTEM? Oh please, cut the crap, JohnTHaller. It is clear to me that your motives are not pure and I hope that everyone else here at TPFC sees that too.JohnTHaller wrote:I was going to add a note in this thread about the release
The db entry gives an accurate description of the settings that are written to the registry, unlike your attempt that was (intentionally) vague. It also tells about the workarounds that are being discussed in this thread.JohnTHaller wrote:You're free to keep the listing incorrect and to ignore Rufus Portable if you wish. I just thought folks would appreciate a portable version of Rufus.
And, just for the record...
I am Baas wrote:Just discovered Rufus Portable... will test later.