如何知道客户端PC上是否有PDF阅读器
我需要知道是否有任何方法可以使用 VB6 检测客户端 PC (Windows) 中是否有任何 PDF 阅读器(Adobe Reader、Foxit Reader...)。 NET(C#)。
我无法通过读取Windows注册表来做到这一点,因为用户可能没有读取它的权限。
谢谢。
I need to know if there is any way to detect in a client PC (Windows) there any PDF reader (Adobe Reader, Foxit Reader, ...), using VB6 and. NET (C #).
I can not do by reading the Windows registry, because the user may not have permissions to read it.
Thank you.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
基于 Jerry Coffin 建议使用
FindExecutable
的示例(基于A sample based on Jerry Coffin's suggestion to use
FindExecutable
(based on this article):创建扩展名为“.pdf”的临时文件,然后使用
FindExectuable
作为您的临时文件。请注意,即使只有扩展名确实很重要,FindExecutable
仍然需要一个真实的文件,而不仅仅是具有正确扩展名的名称。Create a temporary file with an extension of ".pdf", and then use
FindExectuable
for your temporary file. Note that even though only the extension really matters,FindExecutable
still requires a real file, not just a name with the right extension.该 VB 例程将获取文件扩展名的默认可执行文件。如果没有可执行文件,则用户没有配置程序来处理扩展。
This VB routine will get the default executable for a file extension. If there is no executable then the user does not have a program configured to handle the extension.
我知道问题是针对 VB 的,但在 C# 中找到了 FindExecutable 的一个不错的实现 这里:
这是一个用法示例:
I know the question was for VB, but found a decent implementation of FindExecutable in C# here:
Here's a usage example: