繼上次《ArcObject10.1降級至10.0》又遇到版本降級問題。通常的方式有:
方案一:重新編譯
將源代碼加載到解決方案中,修改相應dll的版本,比較快捷的方式是多選后,設置屬性中特定版本項為False,VS會自動搜索本機相應版本並映射
方案二:反編譯
現實和理想總會存在差距。經常,技術經理給你的是一個個dll,沒有源碼,或者找不到了。如果我們還要修改dll中的很多內容,這時,就不得不使用反編譯技能了。對於.NET程序的反編譯,可參考本博客的部分文章。
http://www.cnblogs.com/liweis/p/4463901.html
方案三:修改dll [new]
大神封裝了一個dll文件,里面引用了ao10.1的dll,而我現在想讓它在10.0的環境中運行,又沒有源代碼,只能改dll的屬性了。
將dll文件(.NET程序)加入.NET Reflector,打開Reflexil,選中相應的引用,修改其版本后導出替換即可使用。
需要注意的事,要想程序正常運行,需要加載修改后的dll本身所引用的其他全部dll。