我从C#应用程序调用vlc来播放video。 我需要一种方法来一致检查VLC是否安装。 我已经尝试检查registry项,但它们似乎并不一致或可靠取决于您的Windows版本或体系结构。 任何人有任何build议/意见?
我会说你正在做不必要的工作,试图检测这一点。 如果没有安装VLC,你会怎么做? 显示错误讯息? 然后尝试启动它,并显示错误消息,如果它启动失败。 这样,您也可以捕获安装的情况,但仍然无法启动。 这两个都是你的程序的错误条件。
除此之外,请确保您的应用程序中包含一个自动安装VLC的安装程序,因为您的应用程序要求其正常工作。 那么,唯一的情况是它不会被安装(并且因此你的应用程序将不得不显示错误消息)是如果用户在安装之后明确地删除它的话。 由于他们不得不故意这样做,所以当你的申请后来失败时,他们很可能不会感到惊讶。
我最终只是在我能找到的机器上检查HKLM \ Software \ VideoLAN \ VLC \,并在设置中给用户一个选项来指定VLC的路径,如果没有从该注册表值中检测到的话。