Copy the following documents from a good machine to a new server.
C: \ oracle \ ora81 \ bin \ oraoledb. dll
C: \ oracle \ ora81 \ bin \ oraoledb. TLB
C: \ oracle \ ora81 \ bin \ oraoledbgmr. dll
C: \ oracle \ ora81 \ bin \ oraoledbpus. dll
C: \ oracle \ ora81 \ bin \ oraoledbrfc. dll
C: \ oracle \ ora81 \ bin \ oraoledbrmc. dll
C: \ oracle \ ora81 \ bin \ oraoledbrst. dll
C: \ oracle \ ora81 \ bin \ oraolew.dll
C: \ oracle \ ora81 \ bin \ oraoledbutl. dll
C: \ oracle \ ora81 \ bin \ oraoledbzhs. dll
Then run: regsvr32 oraoledb. dll.
Refer:
Http://www.blogcn.com/user23/redgod/blog/7039800.html
Http://blog.sina.com.cn/u/55f67d23010002qm
Http://jeet.cnblogs.com/archive/2005/03/08/115150.html
Note that you do not need to restart the computer. Because Asp.net users are used, you can restart IIS. You can use the iisreset command.
I have tried this method to solve this problem.