Google

How To Launch A URL In Google Chrome

How To Launch A URL In Google Chrome

When your default browser isn’t Google Chrome, how do you force a particular link to always open in it?

We want to open a particular URL in Google Chrome, but the default browser is Internet Explorer. Most company apps either support or require Internet Explorer, so we don’t want to change the default browser – but one app works better in Chrome.
URI Schemes are required to make this work.

Applies To: Windows 10

Scenario:
We want to open a particular URL in Google Chrome, but the default browser is Internet Explorer. Most company apps either support or require Internet Explorer, so we don’t want to change the default browser – but one app works better in Chrome.

We could create a desktop shortcut using chrome.exe -url http://webpage.com, but the site is also linked from our Intranet – how do we get the link to always launch in the preferred browser?

 

Update 21st Dec 2016

Updates to Chrome seem to have broken this. Thanks to Chris Done for working with me on this fix:

1.Add the String Value of “URL Protocol” with a blank value to:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\] or [HKEY_CLASSES_ROOT\Chrome]
(they’re one and the same)
“URL Protocol”:””

2. Modify the value of

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\shell\open\command\Default]
“C:\Program Files (x86)\Google\Chrome\Application\chrome.exe” — %1

3. Use a space in the URL after the // you’re using for your link:

ChromeHTML:// adamfowlerit.com

4. Create this key to remove the prompt on opening the link:
[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ProtocolExecute\ChromeHTML]
“WarnOnOpen”=dword:00000000

Here’s the registry settings you can copy and paste into a .reg file and import:

Copy from the next line

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML]
@=”Chrome HTML Document”
“URL Protocol”=””

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\DefaultIcon]
@=”C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe,0″

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\shell]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\shell\open]

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\shell\open\command]
@=”\”C:\\Program Files (x86)\\Google\\Chrome\\Application\\Chrome.exe\” — %1″

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ProtocolExecute\ChromeHTML]
“WarnOnOpen”=dword:00000000

Copy stops above this line

End of update 21st Dec 2016

Answer:
URI Schemes. Any program can be launched using a protocol (you can see which ones you already have in Windows under Control Panel > Default Programs > Associate a file type or protocol with a program > Scroll past all the extensions down to the protocols.

You may have something like ‘MAILTO’ which is used in the format “Mailto:”. Type that into your browser and it will either launch a new email from your default mail client, or ask you to set a default mail client.

Some apps automatically create their own protocol, but you can also create your own through registry entries. Details from MSDN are available here.

Luckily for Chrome, this is already done for you, using ChromeHTML. This means you should be able to call Chrome with “ChromeHTML:” and insert the URL you want after it to open – except it doesn’t work. Chrome will open, but no URL is passed over.

A user has logged this bug with Google several months ago, it hasn’t been fixed. There is a workaround though, that can easily be done via group policy to change a local registry setting.

As this user mentions, a quote needs to be taken out of the following registry key, so it looks like this:

[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ChromeHTML\shell\open\command]
@="\"C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe\" -- %1"

The quote removed was before the % sign.

Once this is done, the ChromeHTML protocol can be used with a URL, as long as it’s in this format:

ChromeHTML:// google.com

Note the space after the slashes.

The next issue you will notice, is that Internet Explorer will most likely prompt when launching the URL, asking ‘Do you want to allow this website to open a program on your computer?’ – there is a tickbox you can remove to ‘Always ask before opening this type of address’ but this can also be suppressed via the registry.

Snapcomms have an article on how to do it with their product, but the same rules apply for Google Chrome, as long as you use the right key:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Internet Explorer\ProtocolExecute\ChromeHTML]
“WarnOnOpen”=dword:00000000

Once this key exists, the prompt will no longer show for that particular protocol.

That’s it, now you can use a URL link such as “ChromeHTML:// adamfowlerit.com” on your intranet page to launch the website of your choice in Chrome browser.

Update 22nd January 2018

This issue has been marked as ‘Wont fix’ by the Chromium team. This means potentially, they may ‘break this/remove this/anything could happen’ in the future. Please be aware that you’re now doing something unsupported by Google. In November they removed more of the functionality that made this work, for reasons I can’t quite understand!

 

How To Change IE10’s Default Search Engine

Update 4th August 2018

Hopefully most people are on IE11 now – it’s pretty much the same process as below, but here’s an official Microsoft blog telling you how to do it.

Original Post

Automating the change of Internet Explorer 10’s default search engine from Bing to Google shouldn’t be a difficult task, but it is. I’ll first cover what we’re trying to automate, then the possible options on how to do it.

I found a lot of misinformation online when doing this too which was surprising, I’ll add notes in around what I found on that too.

Brief instructions are down the bottom if you just want to know what to do!

 

To do this manually on an individual PC, you need to do two things. Install the Search Provider addon, and then set it as the default.

The first part can be done by going to the iegallery website and finding an Add-on, for Google Search you can go here: http://www.iegallery.com/en-us/Addons/Details/813 and click the big ‘Add to Internet Explorer’ button.

Setting it as the default is possible from the popup when clicking the button, or going into your Add-ons and ticking the right search engine as your default.

Google provides some very basic instructions here https://support.google.com/websearch/answer/464?hl=en which are:

Internet Explorer 10

  1. Click the Gear icon in the top right corner of the browser window. 
  2. Select Manage add-ons.
  3. Select Search Providers.
  4. In the bottom left corner of your screen, click Find more search providers
  5. Select Google.
  6. Click the Add to Internet Explorer button.
  7. When the window appears, check the box next to Make this my default search provider.
  8. Click Add

So far this is incredibly simple!

If you were starting from scratch, you can package up IE10 using the Internet Explorer Administration Kit (IEAK) and add in extra search engines as well as specify the default. There’s a good guide at 4syops here http://4sysops.com/archives/internet-explorer-10-administration-part-4-ieak-10/ which covers this, but doesn’t help you if PCs already have IE10, or will get it via other means (e.g. WSUS or manual installs).

Group Policy is the obvious choice, but there is no inbuilt way to configure search engines natively via normal Group Policy Preferences. Preferences can be used to deploy registry settings though, which can configure pretty much everything IE does.

There are a lot of sites that have ADM files that claim they will configure IE’s search engine. They will, but there are a lot of caveats. One commonly found blog is http://blogofanitadmin.blogspot.com.es/2011/05/group-policy-changing-default-search.html which is a neat solution, but not ideal and here’s why.

The ADM file is just setting a few registry settings. Search providers are added into the registry under HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\ which lets the user change or configure it themselves, or under [HKEY_CURRENT_USER\Software\Policies\\Microsoft\Internet Explorer\SearchScopes\ which forces the settings upon the user.

If you’re using Policies path, you also probably want to set the Group Policy ‘Restrict search providers to a specific list of providers’ Group Policy under User Configuration > Policies > Administrative Templates > Windows Components > Internet Explorer. This will mean users can’t add their own search engines. If you don’t enable it, users can’t change settings on the search engines you’re pushing out, but can add others. Edit: Check Tim’s comment here for the registry setting on this one

Each added search provider has it’s own GUID randomly generated under the SearchScopes Key. One of Bing’s default GUIDs is {0633EE93-D776-472f-A0FF-E1416B8B2E3A} but this may differ based on OS etc. The full key path is HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\{0633EE93-D776-472f-A0FF-E1416B8B2E3A} in that example, and under that key lives all the settings for that search provider.

The standard settings for a search provider (Google in this example) there are:

“URL”=”http://www.google.com.au/search?q={searchTerms}&sourceid=ie7&rls=com.microsoft:{language}:{referrer:source}&ie={inputEncoding?}&oe={outputEncoding?}”

URL is the address used when you type a non-http formatted address into the URL address bar. It will put what you type into the {searchTerms} part, and pass that onto the full URL.

“SuggestionsURL”=”http://clients5.google.com.au/complete/search?q={searchTerms}&client=ie8&mw={ie:maxWidth}&sh={ie:sectionHeight}&rh={ie:rowHeight}&inputencoding={inputEncoding}&outputencoding={outputEncoding}”
SuggestionsURL is just where the search engine will get it’s suggestions from.

“ShowSearchSuggestions”=dword:00000001
ShowSearchSuggestions is an on or off option (0 off, 1 on) to configure if you’ll be shown the search suggestions or not.

“FaviconURL”=”http://www.google.com/favicon.ico”
FaviconURL is the little icon that appears in a few different spots in IE when doing searches.

“DisplayName”=”Google”
DisplayName just shows the name of the search provider in a few areas, this can be anything you want.

“OSDFileURL”=”http://www.iegallery.com/en-us/AddOns/DownloadAddOn?resourceId=813”
OSDFileURL is where the addon was obtained from, I’m not sure of the importance on this.

“FaviconPath”=”C:\\Users\\username\\AppData\\LocalLow\\Microsoft\\Internet Explorer\\Services\\search_{0533EE93-D776-472f-A0FF-E1416B8B2E3A}.ico”
This will point to a local icon, it’s just a local copy of the FaviconURL ico file.

Getting back to GUIDs, they are randomly generated and don’t matter, as long as they’re unique. A lot of blogs seem to indicate there are particular ones for particular search engines, as well as amazingly saying:
the Bing key is {9F4BEE75-5E51-4568-87AF-67C35184D4B5} and Google is {9F4BEE75-5E51-4568-87AF-67C35184D4B5}.
Several people have decided to copy and paste this (just like I have), but failed to realise they’re the exact same key!

So far this is fine, but will not set the default search engine. The registry key that stores the default is located back in HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\ under ‘DefaultScope’ and will match the GUID of the search engine.

If you do this though via Group Policy Preferences, the user will be prompted saying “An unknown program would like to change your default search provider to Google” which isn’t ideal at all. If your settings are being continually pushed then they’ll keep getting the popup, or if it’s a once off it’s still intrusive. You can push out the registry key once based on a version match of iexplore.exe to try and get it happening at the same time as the IE10 rollout, but that’s hardly clean (and still annoys all your users).

You can use the Policies registry path of HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\SearchScopes\ to force Google as the default, but remember this isn’t user configurable. Fine if you’re forcing Google as the default for everyone, but it doesn’t let people change their default search provider.

I’ve seen a few other suggestions on how to suppress the popup, but from my research it’s not possible without forcing the option. “Turn Off the Security Settings Check Feature” in Group Policy was a suggestion, but that just suppresses the message “Your current security settings put your computer at risk” and has nothing to do with the search provider popup.

There’s also the “Prevent programs from suggesting changes to my default search provider” option but that just toggles between absolutely blocking changes, or prompting.

Also I found that having some conflicting registry settings would make IE just go back to Bing after doing a search, even though it would do the first search with the new default Google – so make sure you’re taking a minimalist approach and have done proper testing of your settings.

There’s also a difference between IE8 and IE10 – IE10 doesn’t have a dedicated search bar, it just uses the URL bar. So when you’re doing a search it will use the settings of the current default search engine’s URL registry value which IE8 may not use.

Another catch is that the HKEY_LOCAL_MACHINE setting for the default search provider may be set, and that will override any user setting. That can be deleted.

If no search providers exist under the current user’s SearchScopes then IE10 will still use Bing, but use the URL string under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\SearchScopes\{0633EE93-D776-472f-A0FF-E1416B8B2E3A}.

If you’d rather just have Google do a search based on anything you type in the URL field, you can either modify the Bing URL key under the current user, or delete all search providers and change the HKLM URL.

Again, all the ADMs I could find were just based on the few above registry keys – do the keys yourself and give yourself the flexibility to adjust them if required, rather than copying and pasting someone else’s. If Google or Bing changed a URL they used you want to be able to adjust this quickly.

So what this all comes down to is there’s no way I could find to do both a silent install of a search engine and default it, without either the user knowing or not having the option to change it.

The above will hopefully give you an idea of what you want to do – for the record I’ve decided to just push out Google as an option, but let users choose to change their default search engine if they choose to.

If you’ve found any different to the above or have any other information, I’d be very happy to hear it.

 

Brief Instructions:

You came here to be told what to do? OK, follow these steps:

1. Add your chosen search provider manually via IE10 and set as default. Different regions have slightly different settings, so don’t just get it off the net.

2. Export settings to .reg or Group Policy Preferences Wizard from HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\SearchScopes\ – Default Scope key as well as everything in the key that matches the name.

3a. Push those settings out to other PCs. Users will get prompted next time they open IE asking if they want to change their default search engine.

OR

3b. Adjust all the key paths by adding the “Policies” part – path HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\SearchScopes\ – this will force the settings but be silent to the user.

Also to set the policy “Restrict search providers to a specific list of providers”.

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Infodelivery\Restrictions]
“UsePolicySearchProvidersOnly”=dword:00000001

4. That’s it. Don’t bother trying to get tricky as IE has several failsafes which will revert it back to Bing because it doesn’t know what’s going on anymore.

Exchange 2010 Unified Messaging – Unrecognised Voicemail Extension

Hi,

I had an issue where a particular user’s voicemail on Exchange 2010 wasn’t working. When they called the voicemail number, they were asked “To access your mailbox, please enter the extension” rather than being greeted with their name and messages. The user was on Lync 2010, and Unified Messaging was enabled on their account with the matching extension number. Also, when dialing voicemail and trying to enter the extension number just met the message ‘XXX isn’t a valid mailbox’.

Disabling and re-enabling Unified Messaging made no difference. I was rather confident this was an Exchange/Unified Messaging issue, so I had the idea of checking ADSI edit to see if UM was properly enabled.

Checking the attribute “msExchUMEnabledFlags” found the issue. When a user has UM enabled, the value of this field should be 831, or 830 when disabled. I’ve come across this issue before, where it’s the wrong value and needs to be changed, but this was the first time I’d come across it as being 832.

Never a good sign when you google something, and you get zero results:

exchange

Changing the Attribute value back to 831 instantly fixed the issue, didn’t even require disabling and re-enabling Unified Messaging. If all else fails, change the value back to 830, refresh your Exchange Management Console and the user should show as being disabled for Unified Messaging, then re-enable as you normally would.

Hope this helps anyone else who comes across a similar issue.

Do You Trust The Cloud Yet?

The Cloud – Monkey (from Monkey Magic) had one, should you use it too?

Has your CIO/CEO/IT Manager done this?

Do you trust the cloud?

I would be surprised if you whole-heartedly said ‘yes’. Firstly because you’re talking back to a blog post which is quite strange behaviour, but secondly because there’s a lot of media attention going on in this space.

Just to rehash the last week, there were two major events, one from Google and the other Microsoft.

Google:

Wednesday 8th September (ish, it’s hard to gather what timezone they’re all talking about) saw a Google Docs outage. The outage lasted 52 minutes: 23 minutes from being alerted to kick off a rollback proccess which then took 24 minutes to do. Add an extra 5 minutes – the time it took for “the additional capacity restored normal function”.

The cause was due to a change they had implemented to improve real time collaboration, but the heavy load of the real world exposed a memory management bug.

Microsoft:

Wednesday 8th September again (although later in the day in America, so the 9th for Aussies) it was Microsoft’s turn. Office 365, Dynamics CRM and some other non-enterprise level services (Hotmail, Skydrive, Live stuff) were down for a few hours. This one was not as clear cut – the outage itself was for the North American data centres, which meant genereally that Australians were fine as we use another based in Singapore. The fix was an update to DNS servers, which means we all have to wait for replication of the new records around the world before everyone everywhere is without issue.

The cause for this is a bit less detailed than Google’s, with ‘DNS issues’ being claimed as the cause.

That’s scary, how do I cope with these outages?
So, would your business complain about these outages? OK yes, you probably have someone who complains about their keyboard clicking too loudly when they type, so of course someone will complain about this.

If you wanted to jump into the cloud, I’d suggest to look at a hybrid solution. This isn’t news to many readers I’m sure – multiple paths of redundancy for “everything” which includes your servers and services. For emails, you can split between your local Exchange (or even hosted) and Google Apps. Postini replays everything that goes through it to Google Apps, so your users can jump onto Google Apps in the event of an Exchange outage and continue working. Then, you’re not missing out on the feature rich options of Exchange, but the business critical emails have full redundancy.

My Conclusion:
The real summary here is – go ahead, use the Cloud. BUT – do what you should already be doing (i.e. redundancy, are you paying attention here? Good.). A single provider in the cloud is not reliable enough at this stage to be trusted for it’s own inbuilt redundancy. Trust two clouds, or one cloud and the other half on-premesis.

If you’re a small business with a portaloo full of staff, then it becomes much harder to justify. Also, is there a manual process that can be used in the event of a service failure? Business Continuity should dictate what’s required for redundancy. Maybe writing things down for a day is a completely valid way of coping with the outage, with little or no loss to the business? There’s no reason to spend money on redundancy in that sort of situation.

Google Apps and Office 365 both guarantee 99.9% uptime – sounds great, but that’s ~42 minutes a month they’re allowing for. How much would your business lose if nobody could do their computer based work for 42 minutes during the day, every month on average? Over a year, that’s slightly over 1 full working day. If the cost of that outweighs the cost of getting a second cloud service or some other means of redundancy, then it’s already paid for itself. Getting a service refund after the event isn’t really what people care about, they just want it to work.
Sources:

Google Docs Blog – http://googledocs.blogspot.com/2011/09/what-happened-wednesday.html
Google Postini: http://www.google.com/postini/continuity.html
Windows Blog – http://windowsteamblog.com/windows_live/b/windowslive/archive/2011/09/08/current-hotmail-and-skydrive-issues.aspx
Office 365 Tweet – http://twitter.com/#!/Office365/status/112008132443648000
ZDNet Microsoft Outage – http://www.zdnet.com/blog/microsoft/outage-hits-microsoft-crm-online-office-365-customers/10359