为什么 Wine 需要 Windows 服务包?

为什么 Wine 需要 Windows 服务包?

在我的系统上有一个WindowsXP-KB936929-SP3-x86-ENU.exe文件/home/kshitiz/.PlayOnLinux/ressources

Wine 为何需要此文件?如果 Wine 需要此文件进行模拟,那么它如何能够在不下载 XP 设置的情况下模拟 Windows XP?

但我看不到该文件的提取内容。它是如何使用的?

答案1

Wine 是一个兼容层。它通过提供 Windows 程序调用的 DLL 的替代实现以及替代 Windows NT 内核的进程来复制 Windows 的功能。

WindowsXP-KB936929-SP3-x86-ENU由 Play On Linux 自动下载。Play On Linux 使用预制的自定义脚本来安装软件。例如,如果您要安装Command And Conquer: Red Alert 3日志文件,除了许多其他行之外,还会显示以下内容:

09/17/12 13:46:15 - [POL_GPG_install_key] Message: Importing PlayOnLinux public key
09/17/12 13:46:16 - [POL_Source] Message: POL GPG : Good signature
09/17/12 13:46:16 - [POL_Download_Resource] Message: Downloading resource     
http://download.microsoft.com/download/d/3/0/d30e32d8-418a-469d-b600-f32ce3edf42d/
WindowsXP-KB936929-SP3-x86-ENU.exe
09/17/12 13:46:23 - [POL_Download_Resource] Message: Resource already present

该文件是 Service Pack 3 所需的文件,包含对网络工具的修复或更改。

答案2

我也有同样的疑问,就像开源软件一样,查看源代码就能找到答案。Winetricks 使用该 Service Pack 文件提取了几个 DLL,即

esent.dll (MS Extensible Storage Engine)
gdiplus.dll (MS GDI+)
mf.dll (MS Media Foundation)
msftedit.dll (Microsoft RichEdit Control)

相关内容