最後是用系統默認的administrator帳戶登陸,從新註冊了該com組件。windows
--update 2014/2/18 16:38測試
另有一臺出現一樣症狀的機器,一樣的辦法未解決問題。spa
懷疑是我在administrator帳戶下作了其餘未知關鍵操做。.net
回憶之下,症狀解除之時,問題機器恰好作了一件看起來不相干的事,安裝vs2012.orm
……ci
……get
……it
經兩臺問題機測試,確實在安裝了vs2012之後,就能正常找到該COM的類型了。io
仍是不知道爲何。。。。。。
懷疑1.vs2010有bug,vs2012安裝之後該組件就沒問題了;
懷疑2.該com的interop.xx.dll是x86,但com自己是x64的,因此應該用x64。
(interop和com的dll之間是個什麼關係?)
(在症狀接觸以後,這個interop.xx.dll仍然是x86.)
(會不會是vs2012就是完善了interop和com之間的。。。那啥..匹配)
懷疑3.不算懷疑,下回再有測試機會,先直接裝11的rt和.net 4.5 rt看看。
-----------------------------------
另,這個COM用regsvr32 xx.dll註冊是OK的,但若是用regsvr32 -n -i:user xx.dll 會報「已加載,但找不到入口點DllInstall。」
--update 2014/2/20
前面有懷疑是win7的系統盤形成某些系統文件不對,而後vs2012的安裝正好。。。
用msdn的原版win7試過。不是這個緣由。
而後一條條安裝update中的更新。發現安裝了下面這個補丁之後,就OK了。
用於基於x64系統的windows7的microsoft .net framework 4.5.1 kb2858725 (53.7M)
可是kb2858725脫機安裝包在微軟下載中心是隻有5m+的一個補丁。update center看起來像是內容更多。