So, I didn't quite give up and tried one more thing...
With Internet Explorer set as the default browser, I ran procmon while trying to click on a link in Outlook noticed Outlook.exe was trying to open but was not finding CLSID {17FE9752-0B5A-4665-84CD-569794602F5C}
I searched the registry for that GUID and the only places I was seeing that GUID appear was in a "DelegateExecute" string under all of the "...\shell\open\command" keys with default pointing to "C:\Program Files (x86)\Internet Explorer\iexplore.exe" -nohome
So I went through and manually deleted all occurances of that DelegateExecute string that had the value {17FE9752-0B5A-4665-84CD-569794602F5C} and finally it started working, yay!
Now I finally got Internet Explorer working as my default browser.
gkriggs, you are the man !!
I try all every suggestion in this post and none of them fix my problem.
I almost give up then I found your post about registry key
"DelegateExecute" = {17FE9752-0B5A-4665-84CD-569794602F5C}
I went in and delete "DelegateExecute" string in registry below and IE is working as default browser !!!
no "Locate link browser" pop up any more ( symptoms in KB821692 http://support.microsoft.com/kb/821692/en-us )
delete this registry string
[HKEY_CLASSES_ROOT\htmlfile\shell\open\command]
"DelegateExecute"="{17FE9752-0B5A-4665-84CD-569794602F5C}"
[HKEY_CLASSES_ROOT\htmlfile\shell\opennew\command]
"DelegateExecute"="{17FE9752-0B5A-4665-84CD-569794602F5C}"
for those who have "Locate Link browser" pop up , and you already browse it to IE folder path
"C:\Program Files\Internet Explorer\iexplore.exe" and click OK
outlook will create extra registry string in
change number 11.0 below to your version of outlook (11.0 = outlook2003)
[HKEY_CURRENT_USER\Software\Microsoft\Office\11.0\Outlook\Preferences]
"InternetBrowserPath"="C:\Program Files\Internet Explorer\iexplore.exe"
delete this string "InternetBrowserPath" and "locate link browser" symptom will pop up again.
this is how to reproduce the symptom, untill you finally fix it by delete those "DelegateExecute" registry string.
I wonder why that GUID {17FE9752-0B5A-4665-84CD-569794602F5C} is even there at first, because it doesn't exist on my other windows7 notebook which doesn't experience this problem.
I have two windows7 notebook and compare all related registry.
Does anyone know which software put this GUID {17FE9752-0B5A-4665-84CD-569794602F5C} into the registry ?
or this GUID belong to which software ? this must be the root cause.
thank you to gkriggs who found the way to fix this problem and share to us.