检测是否安装了IIS 6.0元数据库兼容性
我使用 VS 2008 构建了一个 Web 设置项目,其中我需要检查是否安装了 IIS 6.0 Metabase 兼容性。我通过访问
为了进一步检查问题,我创建了一个控制台应用程序来访问相同的密钥。当我在win7上运行它时,应用程序失败。然后,我在 WinXP SP3 兼容模式下运行它,它运行得很好。
有人可以帮忙解决这个问题吗?我愿意接受其他防弹方法来检测是否安装了 IIS 6.0 Metabase 兼容性
I have built a web setup project using VS 2008, wherein I need to check whether IIS 6.0 Metabase compatibility is installed. I tried it by accessing registry keys specifed in here in custom actions. But when I run the installer, I the key comes out to be blank irrespective of whether metabase compatibility is installed.
To further check the problem, I created a Console app to access the same keys. When I run it on win7, the app fails. Then, I ran it in WinXP SP3 compatibility mode and it ran perfectly.
Can someone help with this. I am open to other bullet-proof means of detecting whether IIS 6.0 Metabase compatibility is installed
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我最终检查了文件“%windir%\system32\inetsrv\metadata.dll”是否存在。
I ended up checking for presence of the file "%windir%\system32\inetsrv\metadata.dll".
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\Microsoft-Windows-IIS-WebServer-Package~31bf3856ad364e35~amd64~~6.1.7600.16385\Updates
检查 IIS-IIS6ManagementCompatibility 是否为 1。1 表示已安装,0 表示已安装未安装。
其他复选框也反映到 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\Microsoft-Windows-IIS* 下的某些内容
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\Microsoft-Windows-IIS-WebServer-Package~31bf3856ad364e35~amd64~~6.1.7600.16385\Updates
Check if IIS-IIS6ManagementCompatibility is 1. 1 means installed, 0 means not installed.
Other check boxes also reflect to something under HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\Microsoft-Windows-IIS*