Rufus - USB Formatting Utility

Submit portable freeware that you find here. It helps if you include information like description, extraction instruction, Unicode support, whether it writes to the registry, and so on.
Message
Author
User avatar
guinness
Posts: 4118
Joined: Mon Aug 27, 2007 2:00 am
Contact:

Re: Rufus - USB Formatting Utility

#16 Post by guinness »

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.

User avatar
mik.y
Posts: 10
Joined: Sun Feb 19, 2012 4:23 pm
Contact:

Re: Rufus - USB Formatting Utility

#17 Post by mik.y »

Its funny what text you have on your website:
License
GNU General Public License (GPL) version 3 or later.
Or later? You dont know? :o

User avatar
webfork
Posts: 10821
Joined: Wed Apr 11, 2007 8:06 pm
Location: US, Texas
Contact:

Re: Rufus - USB Formatting Utility

#18 Post by webfork »

mik.y wrote:
License
GNU General Public License (GPL) version 3 or later.
Or later? You dont know? :o
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.

User avatar
I am Baas
Posts: 4150
Joined: Thu Aug 07, 2008 4:51 am

Re: Rufus - USB Formatting Utility

#19 Post by I am Baas »

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?

TP109
Posts: 571
Joined: Sat Apr 08, 2006 7:12 pm
Location: Midwestern US

Re: Rufus - USB Formatting Utility

#20 Post by TP109 »

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?
That's interesting. I would like to know too.

User avatar
guinness
Posts: 4118
Joined: Mon Aug 27, 2007 2:00 am
Contact:

Re: Rufus - USB Formatting Utility

#21 Post by guinness »

The source code doesn't offer much and I couldn't find REGKEY_COMM_CHECK being used again apart from being defined, weird.

Ruby
Posts: 324
Joined: Sat Sep 05, 2009 6:35 pm

Re: Rufus - USB Formatting Utility

#22 Post by Ruby »

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:

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;
}
~Ruby
Last edited by Ruby on Tue Dec 31, 2013 12:40 pm, edited 2 times in total.

User avatar
guinness
Posts: 4118
Joined: Mon Aug 27, 2007 2:00 am
Contact:

Re: Rufus - USB Formatting Utility

#23 Post by guinness »

Thanks Ruby.

User avatar
I am Baas
Posts: 4150
Joined: Thu Aug 07, 2008 4:51 am

Re: Rufus - USB Formatting Utility

#24 Post by I am Baas »

guinness wrote:Thanks Ruby.
+1

User avatar
Midas
Posts: 6724
Joined: Mon Dec 07, 2009 7:09 am
Location: Sol3

Re: Rufus - USB Formatting Utility

#25 Post by Midas »

@Ruby: my thanks, too. :)

Couldn't this be summarized for the TPFC entry?

TP109
Posts: 571
Joined: Sat Apr 08, 2006 7:12 pm
Location: Midwestern US

Re: Rufus - USB Formatting Utility

#26 Post by TP109 »

@Ruby

Many thanks!

User avatar
I am Baas
Posts: 4150
Joined: Thu Aug 07, 2008 4:51 am

Re: Rufus - USB Formatting Utility

#27 Post by I am Baas »

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.
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.

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.

User avatar
I am Baas
Posts: 4150
Joined: Thu Aug 07, 2008 4:51 am

Re: Rufus - USB Formatting Utility

#28 Post by I am Baas »

I also noticed that:
2013-01-10 15:58:38
Updated by JohnTHaller
Writes settings to:Windows registry
Stealth:No
Stealth (details): All settings stored in registry
Emphasis mine.

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.

User avatar
JohnTHaller
Posts: 716
Joined: Wed Feb 10, 2010 4:44 pm
Location: New York, NY
Contact:

Re: Rufus - USB Formatting Utility

#29 Post by JohnTHaller »

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.
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.

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

User avatar
I am Baas
Posts: 4150
Joined: Thu Aug 07, 2008 4:51 am

Re: Rufus - USB Formatting Utility

#30 Post by I am Baas »

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.
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 was going to add a note in this thread about the release
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: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.
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.

And, just for the record...
I am Baas wrote:Just discovered Rufus Portable... will test later.
Attachments
Rufus.png

Post Reply