我最近克隆了一个分区Windows 7的在上面。希望它能正常工作,我成功启动了它,并能够运行它,但我得到了类似“接口不受支持“在运行某些应用程序时。网据报道,在一些程序中缺失。
我谷歌了一下,发现它与“注册 DLL“。所以,我的问题是,当我克隆硬盘上的分区时,是否创建了一个完美的副本。如果是这样,那么为什么我需要“再次注册 DLL”。如果不是,请解释一下。
答案1
当克隆过程后系统分区的驱动器号发生变化时,任何依赖 DLL 和其他文件的硬编码路径的应用程序都会自然中断。有一些 API,例如 GetWindowsDirectory()、SHGetKnownFolderPath()、SHGetSpecialFolderPath()、Environment.GetFolderPath() 等,程序员应该使用,但有时却没有使用。
此外,出于许可/盗版预防原因而存储其安装卷的 GUID 的应用程序也可能会崩溃。在这种情况下,除了重新注册应用程序(如果可能)外,没有简单的解决方法。