【问题标题】:How to verify if rabbitmq is installed on windows?如何验证rabbitmq是否安装在windows上?
【发布时间】:2021-04-20 11:37:46
【问题描述】:

有没有办法查出机器上是否安装了rabbitmq?

命令行或 powershell 脚本或 C# 中的某些内容,因为我试图在我的 c# 代码中检查它。

我搜索了它,只找到了这个,但它对我的情况没有多大帮助

Verify version of rabbitmq

编辑

刚刚在上述帖子的一个答案中找到了这段代码sn-p,但不确定它是不是正确的方式

public string GetRabbitMqVersion()
{
    string prefix = "rabbitmq_server-";
    var dirs = System.IO.Directory.EnumerateDirectories(@"C:\Program Files (x86)\RabbitMQ Server", string.Format("{0}*",prefix));

    foreach (var dir in dirs)
    {
        //Just grab the text after 'rabbitmq_server-' and return the first item found
        var i = dir.LastIndexOf(prefix);
        return dir.Substring(i+16);
    }
    return "Unknown";
}

【问题讨论】:

  • 在 Windows 上使用它的任何人都应该定义几个环境变量,所以要找出它是否已安装,或者我想,之前已经安装过,最快的方法可能是是检查是否已定义了这些变量中的一个或多个。例如Set RABBITMQ_ >NUL && Echo RabbitMQ variables are defined.。或者,您可以检查用户漫游配置文件目录If Exist "%APPDATA%\RabbitMQ\" Echo Found profile directory. 或其内容,例如主配置文件If Exist "%APPDATA%\RabbitMQ\rabbitmq.conf" Echo Found main config file.

标签: c# windows powershell cmd rabbitmq


【解决方案1】:

提供已安装软件的列表。此列表中的 RabbitMQ 应用程序的名称是什么?一旦知道这一点,就很容易识别。

powershell -NoLogo -NoProfile -Command ^
    "Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* |" ^
        "Select-Object DisplayName, DisplayVersion, Publisher, InstallDate |" ^
        "Sort-Object -Property DisplayName"

【讨论】:

  • 这看起来像是一个可行的解决方案!我确实得到了安装的程序列表。但是我在powershell中不是那么彻底,请您告诉我如何过滤记录以仅获取rabbitmq?
  • 好的,我可以根据您的回答创建可行的解决方案,如果解决方案很好,请告诉我(Get-ItemProperty HKLM:\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Uninstall\* | Where-Object{$_.DisplayName -like '*rabbitmq server*'} | Select-Object) -eq $null
  • 是的,我想你有。
【解决方案2】:

正如文档所说,您应该有一个包含文件 rabbitmqctl.bat 的目录

文件应该放在C:\Program Files\RabbitMQ\rabbitmq_server-x.x.x\sbin\

然后你可以像这样rabbitmq-service.bat status在cmd中运行任何命令

https://www.rabbitmq.com/install-windows-manual.html

【讨论】:

  • C:\Program Files (x86)\RabbitMQ\rabbitmq_server-x.x.x\sbin\ 呢?
  • 这个路径应该是你安装rabbitmq的路径。
  • omeninocloud,如果 OP 知道最终用户安装它的位置,他们就不会询问是否有办法查明它是否已安装;他们早就知道了。即使软件安装在默认位置,根据软件和/或操作系统的位数,也可能位于Program FilesProgram Files (x86)。此外,无论最终用户使用的是 Windows 安装程序、Chocolatey 还是手动方法,最终用户都可能在其他任何地方选择替代安装目录。
猜你喜欢
  • 2018-06-30
  • 1970-01-01
  • 1970-01-01
  • 2016-11-03
  • 2014-09-14
  • 1970-01-01
  • 2021-10-25
  • 1970-01-01
  • 2020-11-11
相关资源
最近更新 更多