Windows Embedded Standard開發(fā)初體驗(yàn)(六)
好了,讓我們回過頭來說Silverlight TV的那個(gè)安全限制吧,還是要強(qiáng)調(diào)一下,并不是所有的Silverlight都會(huì)遇到這個(gè)問題,只是Silverlight TV調(diào)用了ActiveX組件,才會(huì)遇到這個(gè)問題。
這個(gè)安全提示在我們平時(shí)使用IE時(shí)也經(jīng)常會(huì)遇到,點(diǎn)一下也就沒事了,畢竟為了安全著想嘛。不過如果將這個(gè)Silverlight組件作為Shell,每次啟動(dòng)之后,都是一個(gè)黑屏,需要人工點(diǎn)一下之后才能正常運(yùn)行,用戶體驗(yàn)似乎不夠友好。
于是,我們就需要更改一些IE的高級(jí)安全設(shè)置來解決這個(gè)問題了。如果熟悉IE的朋友,可能很快就知道問題出在哪里了,不過我是在同事的幫助下花了兩天才找到問題根源的。問題的原因在于:
對(duì)的,就是在IE的Internet Options對(duì)話框里,安全選項(xiàng)(Security)中“Allow active content to run in files on My computer”的選項(xiàng)默認(rèn)是不選的。選上這個(gè)設(shè)置之后,運(yùn)行Silverlight TV時(shí)就不會(huì)有安全提示出現(xiàn)了。
IE的問題解決了,可是到了Windows Embedded Standard里又有問題了。IE的Advanced設(shè)置在WES IE組件的設(shè)置里是沒有的。所以,我們只能通過修改注冊(cè)表這一條路了。
總之,經(jīng)過了千難萬險(xiǎn),我們知道了“Allow active content to run in files on My computer”對(duì)應(yīng):
HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerMainFeatureControlFEATURE_LOCALMACHINE_LOCKDOWN
中的“iexplore.exe”項(xiàng),而且非常特別的是,該項(xiàng)為0,表示選中該選項(xiàng);為1時(shí),則表示未選中該項(xiàng)。大家開發(fā)時(shí)一定注意。
總之,我們了解了這個(gè)設(shè)置對(duì)應(yīng)的注冊(cè)表項(xiàng)后,接下來就是在組件中添加相應(yīng)的注冊(cè)表項(xiàng)就可以了。這個(gè)工作在前邊已經(jīng)做過了。
評(píng)論