話說上回我為了嘗嘗螃蟹的味道而裝了 VS2011 Developer Preview,但是裝完后立馬卸載掉了,原因是這家伙的安裝目錄位置沒用,我設(shè)置到D盤的但是裝完后D盤的文件夾只有一百多M,而足足8G+的空間是在C盤上消耗的。
可憐我的C盤本來只有8.XG,所以不得不卸載掉它。
卸載掉本身沒啥問題,只是昨晚突然發(fā)現(xiàn) Sql Server 2008 R2 Management Studio 突然不能新建數(shù)據(jù)庫關(guān)系圖了,一建立就會報(bào)“找不到指定的模塊(MS Visual Database Tools)”的錯(cuò)誤:
為了這個(gè)錯(cuò)誤我甚至認(rèn)真評估了重新配置數(shù)據(jù)庫的可能性。無奈這個(gè)R2的SQL2008打過SP1了,無論是修復(fù)還是重裝都是很花時(shí)間的事情,所以不甘心,在Google上找了一圈。終于找到個(gè)類似的主題反應(yīng)了這個(gè)問題。是位國際友人報(bào)告的,標(biāo)題是“SQL Server 2008 R2 – “Specified Module cannot be Found. (MS Visual Database Tools)””,其實(shí)是一樣的錯(cuò)誤(他的是英文版……)。可惜這個(gè)主題中表示同樣遭遇這個(gè)問題的人雖然不少,但是他們終究沒找到解決方案。
根據(jù)他們的經(jīng)驗(yàn),下面的方法已經(jīng)確認(rèn)是無效的:
重裝 SQL2008 (我想包括了修復(fù))
重裝 .net framework 3.5
重裝VS2010和VS2010 SP1
他們并沒有討論出個(gè)所以然來。如果非說他們有進(jìn)度的話,那就是其中的一個(gè)哥們兒選擇了『重裝系統(tǒng)』來一了百了……
作為一個(gè)Win7正式發(fā)布后就沒重裝過系統(tǒng)的人來說,這樣的解決方案確實(shí)有點(diǎn)兒……無法接受。
2.還是自己解決吧。
偉大的領(lǐng)袖毛主席說,『自己動手,豐衣足食』。
具體查找原因的過程略……其實(shí)就是用Process Monitor觀察創(chuàng)建關(guān)系圖時(shí)的加載操作,看看哪些是失敗的,說出來又是巴拉巴拉一堆流水賬,不說也罷。最終找到的原因是:『找不到 msvcr11.dll 』。
明眼人一看就知道這是 VS2011 中的附帶的VC運(yùn)行時(shí),但為什么卸載VS2011后SQL Server 2008R2 還需要它,這個(gè)問題也許只有微軟能解釋了。(說不定是VS2011更新了SQL2008 R2也使用的共享組件?)
既然知道原因了,那就很簡單了。在VS2011 Developer Preview的安裝包中找到“packagesvcRuntimeMinimum_x86vcRuntimeMinimum_x86.msi”安裝一下就行了。64位系統(tǒng)說不定把“packagesvcRuntimeMinimum_amd64vcRuntimeMinimum_amd64.msi”也裝一下更好一點(diǎn)。這樣說來,回想起來我卸載VS2011的時(shí)候是把附帶的組件想當(dāng)然地覺得也是不需要的所以給一并刪除了。看來刪除有風(fēng)險(xiǎn)刪除需謹(jǐn)慎啊,有些東西真的不是你想刪,想刪就能刪的。哎。