Hi Jacek:
I found that the real reason is urlmon!get_protocol_cf return MK_E_SYNTAX(0x800401e4when it open this registry key “HKEY_CLASSES_ROOT\PROTOCOLS\Handler\app” failed.
Do you think the right way is implement a new 'app:' protocol handle like "HKEY_CLASSES_ROOT\PROTOCOLS\Handler\http"?

Thank you!




------------------
Regards,
Changhui.
 
 
 
------------------ Original ------------------
Date:  Thu, Jan 15, 2015 05:55 PM
To:  "wine-devel"<wine-devel@winehq.org>;
Subject:  Re: ieframe:add app: protocol support to make mshtml triggerBeforeNavigate2 event when handle app: hyperlink
 
Hi Changhui,

On 01/15/15 02:39, Changhui Liu wrote:
Hi, this verify test need the user click the app: hyperlink in browser,
so it is hard to write a test in dlls/ieframe/tests.

I upload the test html file and a test exe here:
http://www.imakevideo.com/app.html
http://www.imakevideo.com/mfc_web.zip

To run the test, extract mfc_web.zip, then run the mfc_web.exe, click the Go button;
A message "BeforeNavigate2 app:xxx" will popup when click the app: hyperlink 
if the BeforeNavigate2 event was triggered as like IE in windows, or nothing.

It doesn't seem right. There is nothing special about app: protocol handling, BeforeNavigate2 should be called in this case the same way as for any other protocol. You need to find the real reason why it's not called instead of calling it in an error case. The bug is likely to be in mshtml.

Jacek