检测windows上是否安装了MongoDB
我需要在我的应用程序安装程序中检测MongoDB是否安装在Windows计算机上 有人知道我可以在注册表中查找什么以确保它已安装吗 我搜索了整个注册表,研究了SO和google几个小时。Mongo注册表项使用GUID键,因此每次安装都会更改,我认为在innosetup中找不到这种方式检测windows上是否安装了MongoDB,windows,mongodb,Windows,Mongodb,我需要在我的应用程序安装程序中检测MongoDB是否安装在Windows计算机上 有人知道我可以在注册表中查找什么以确保它已安装吗 我搜索了整个注册表,研究了SO和google几个小时。Mongo注册表项使用GUID键,因此每次安装都会更改,我认为在innosetup中找不到这种方式 我希望有人已经解决了这个问题,可以帮助我,这样我就不必花更多的时间重新发明轮子。感谢所有提供有用信息的人。Windows上MongoDB的默认安装目录为:C:\Program Files\MongoDB 参考: 还
我希望有人已经解决了这个问题,可以帮助我,这样我就不必花更多的时间重新发明轮子。感谢所有提供有用信息的人。Windows上MongoDB的默认安装目录为:
C:\Program Files\MongoDB
参考:
还有,对于注册表角度
更多信息,谷歌 问题是,用户可能已经通过zip文件安装了MongoDB,因此注册表中根本没有安装的任何痕迹。您可以多走一步,尝试连接到标准27017端口并尝试获取状态,但是如果mongodb目前没有运行呢?这里没有好的答案——只需询问用户是否安装了MongoDB以及目录是什么。它不是很“自动化”,但在这种情况下,它更可靠,问题更少。在所有文件中搜索文件
mongod.exe
在这种情况下可能会起作用,如果用户已从zip文件安装,此方法仍然有效。打开命令提示符并键入“cd c:\program files\mongodb\server\your version\bin”。输入bin文件夹类型“mongo start”后。如果连接成功或失败,则表示至少已安装。`C:\Program Files`可能不存在;它在Win7 64位上有所不同,这取决于您运行的是32位还是64位应用程序,或者在Windows 8上,或者是否已将其配置为其他位置,或者语言是否为英语。(有关更多信息,请参阅google!)MongoDB也可能未安装在默认安装目录中。瞧,这不是问题的答案。谢谢你的尝试。这与Admdew在上面为检测注册表中的程序提供的链接相同,不幸的是,mongo不是以这种方式添加到注册表的,而是在GUID键下。我现在正在做的就是检测它是否安装在程序文件的某个位置,但正如Ken White所说,这并不是正确的方法。是的,我在谷歌上搜索了不少,如果你在那里找到了我忽略的答案,请与我分享!您可以尝试搜索mongodb文件mongod.exe…这可能有效。此外,如果mongo未在默认端口上运行,或者仅绑定到特定接口,该怎么办?如果他们选择在docker容器或VM中运行Mongo怎么办?这可能不会影响你的申请,但你将很难找到证据。我认为向他们询问mongo连接的详细信息是最好的选择