使用程序检查已安装的软件

2024-02-12

我们需要创建一个程序..实际上我们被要求创建一个软件许可合规工具....我们如何检查机器内安装的软件.. 是通过注册表吗...在搜索时我看到一篇文章说我们需要研究 HKLM 的“卸载”子项。

另外,我们是否还可以获得有关软件是否是免费软件、共享软件、从注册表获得许可的信息???

我们计划使用 Python 和 Mysql 来完成此操作


正如您已经提到的,(正确)安装的程序列表可以在注册表中的注册表项下找到

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall

See here http://social.msdn.microsoft.com/Forums/en/csharplanguage/thread/be924d3d-f92f-4d51-bd74-a0d07cff0f5a例如或使用谷歌获取更多信息。使用看看这个键regedit,结构id相当明显。

有关使用 python 访问注册表的信息,请参阅_winreg – Windows 注册表访问 http://docs.python.org/library/_winreg.html在 python 标准库文档中。

请注意,可能总是有一些软件没有出现在注册表中:有些软件仍然可以通过将其放入目录中来安装,你不会发现这些家伙......

对于第二部分,有no way通过查看注册表来了解许可证类型或许可状态(即正确许可)。没有标准方法来存储此信息。您能做的最好的事情就是编制尽可能多的程序列表(您必须手动执行此操作,即使对于 Office、Adobe 等标准程序,这也会很耗时)并存储所有必要的信息(即注册表中的 GUID 密钥、许可证类型等)在数据库中。

然后,您的工具可以将当前安装的程序列表与您的列表进行比较,可能会检查许可状态。作为第一步,这将更加困难,因为每个软件都有自己的(大部分是秘密的!)存储信息的方式 - 毕竟,如果这些信息是可访问的,那么它也可以被伪造。

然后,您的工具可以通知系统管理员其发现以及任何不在列表中的程序,他必须手动检查它们的许可。您可以提供一些组织帮助来管理此信息,甚至可以更新数据库以供将来使用。

HTH

Martin

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用程序检查已安装的软件 的相关文章

  • 如何让Python的socket服务器永远运行

    我有这段代码创建了一个简单的Python套接字服务器 但是每次客户端断开连接时它都会关闭 如何让它永远运行 import socket HOST PORT 8000 s socket socket socket AF INET socket
  • 使用 Pillow 和 Numpy 进行图像推导

    I have two images and 我想导出一个只有红色 Hello 的图像 例如 所以我正在运行一个简单的推导python脚本 from PIL import Image import numpy as np root root
  • 如何使 Django ManyToMany “直通”查询更加高效?

    我使用的是 ManyToManyField 和 through 类 这会在获取事物列表时产生大量查询 我想知道是否有更有效的方法 例如 这里有一些描述书籍及其几位作者的简化类 它们通过角色类 定义 编辑器 插画家 等角色 class Per
  • 修复类以在 Flask 会话中启用对象存储[重复]

    这个问题在这里已经有答案了 我有一个自定义类 Passport 其中包含活动用户身份和权限 我曾经将它存储在会话中 如下所示 p Passport p do something fancy session passport p 它就奏效了
  • SQLAlchemy:检查给定值是否在列表中

    问题 在 PostgreSQL 中 检查某个字段是否在给定列表中是使用IN操作员 SELECT FROM stars WHERE star type IN Nova Planet SQLAlchemy 的等价物是什么INSQL查询 我尝试过
  • 检查多维 numpy 数组的所有边是否都是零数组

    n 维数组有 2n 个边 1 维数组有 2 个端点 2 维数组有 4 个边或边 3 维数组有 6 个 2 维面 4 维数组有 8 个边 ETC 这类似于抽象 n 维立方体发生的情况 我想检查 n 维数组的所有边是否仅由零组成 以下是边由零组
  • 如何充分释放函数中使用的GPU内存

    我在用着cupy在接收一个函数numpy数组 将其推到 GPU 上 对其进行一些操作并返回cp asnumpy它的副本 问题 函数执行后内存没有被释放 如ndidia smi 我知道内存的缓存和重用cupy 但是 这似乎仅适用于每个用户 当
  • __getitem__、__setitem__ 如何处理切片?

    我正在运行 Python 2 7 10 我需要拦截列表中的更改 我所说的 更改 是指在浅层意义上修改列表的任何内容 如果列表由相同顺序的相同对象组成 则列表不会更改 无论这些对象的状态如何 否则 它会更改 我不需要找出来how列表已经改变
  • 为什么我不能“string”.print()?

    我的理解print 在 Python 和 Ruby 以及其他语言 中 它是字符串 或其他类型 上的方法 因为它的语法非常常用 打印 嗨 works 那么为什么不呢 hi print 在 Python 中或 hi print在红宝石工作 当你
  • 使用Python进行图像识别[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我有一个想法 就是我想识别图像中的字母 可能是 bmp或 jpg 例如 这是一个包含字母 S 的 bmp 图像 我想做的是使用Pyth
  • 如何在返回的 AJAX 调用上使用 django 模板标签?

    我有一个简单的 AJAX 脚本 它在名为的搜索字段中获取输入的字符串AJAXBox并调用一个视图函数 该函数使用过滤器查询数据库并返回与输入参数匹配的所有 User 对象的查询集 当我使用 django 模板标签迭代查询集时 它不起作用 我
  • 什么时候用==,什么时候用is?

    奇怪的是 gt gt gt a 123 gt gt gt b 123 gt gt gt a is b True gt gt gt a 123 gt gt gt b 123 gt gt gt a is b False Seems a is b
  • 如何将一串Python代码编译成一个可以调用函数的模块?

    在 Python 中 我有一串 Python 源代码 其中包含以下函数 mySrc def foo print foo def bar print bar 我想将这个字符串编译成某种形式类似模块的对象这样我就可以调用代码中包含的函数 这是我
  • 将查询参数添加到 URL

    我正在尝试自动从网站下载数据 我需要将动态参数传递到每天更改的站点 html 的结构是表格而不是表单 如何传递参数并从 url 获取结果 这是我尝试过的 它需要在 python 2 7 中 import urllib url https d
  • 使用 .map() 在 pandas DataFrame 中高效创建附加列

    我正在分析形状与以下示例类似的数据集 我有两种不同类型的数据 abc数据和xyz data abc1 abc2 abc3 xyz1 xyz2 xyz3 0 1 2 2 2 1 2 1 2 1 1 2 1 1 2 2 2 1 2 2 2 3
  • 如何将列表中的每个项目转换为字符串,以便连接它们? [复制]

    这个问题在这里已经有答案了 我需要加入一个项目列表 列表中的许多项目都是从函数返回的整数值 IE myList append munfunc 我应该如何将返回的结果转换为字符串以便将其加入列表 我是否需要对每个整数值执行以下操作 myLis
  • Learning_rate 不是合法参数

    我正在尝试通过实现 GridSearchCV 来测试我的模型 但我似乎无法在 GridSearch 中添加学习率和动量作为参数 每当我尝试通过添加这些代码来执行代码时 我都会收到错误 这是我创建的模型 def define model op
  • Java 相当于 Python 的 urllib.urlencode(基于 HashMap 的 UrlEncode)

    From https stackoverflow com questions 2018026 should i use urllib or urllib2 2018103 2018103 Java 中 Python 的 urllib url
  • 用户的完整 UNIX 用户名

    想知道您是否知道是否有一种巧妙的方法可以从 shell 获取完整的用户名 示例 如果我的 UNIX 用户名是 froyo 那么我想获取我的全名 在本例中 如系统中注册的那样 froyo Abhishek Pratap Finger 命令可以
  • 使用 Python 进行 Google 搜索网页抓取 [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 最近为了工作中的一些项目 学习了很多python 目前我需要使用谷歌搜索结果进行一些网络抓取 我发现几

随机推荐

  • 子组件的 v-model 和子组件 Vue 内部的 v-model

    有没有办法简化这段代码 该按钮还应该更改子级的 localValue Vue component my input template div b My Input b br localValue localValue br div
  • 浮动溢出?

    下面的代码似乎总是产生错误的结果 我已经在 gcc 和 windows Visual Studio 上测试了它 是因为浮动溢出还是其他原因 提前致谢 include
  • c++11 成员函数从 unique_ptr 向量返回原始指针向量

    我开始使用 c 11 功能 并且我喜欢仅使用智能指针来拥有对象 这是我的课程 class MyClass public vector
  • Maven,配置具体目标

    我想配置 maven war plugin 的 爆炸 目标
  • 显示 Flex 上的文本右对齐

    我的代码如下 div div div div list name div br div div formatTime this state remainingTime days span language days span div div
  • C++11 随机数生成器的线程安全

    C 11 中有许多新的随机数生成器引擎和分布函数 它们线程安全吗 如果您在多个线程之间共享单个随机分布和引擎 是否安全并且您仍然会收到随机数吗 我正在寻找的场景是这样的 void foo std mt19937 64 engine stat
  • Xamarin 上自定义文件扩展名的意图过滤器实现

    我想在我的应用程序中打开带有自定义扩展名的文件 它可以来自电子邮件 下载 蓝牙等 每当用户点击这些文件时 我的应用程序就应该打开并执行一些任务 我需要 xamarin 平台的参考 帮助 我在这方面确实是新手 我的 Android 清单
  • SQLAlchemy 在事务中空闲

    我有用 Python 3 6 Flask 和 SQLAlchemy PostgreSQL 编写的应用程序 我遇到了悬挂问题idle in transaction我的数据库中的连接 这可能是因为我在选择查询后没有提交也没有回滚 我使用默认的
  • 使用 Java 访问 JSONArray 中项目的成员

    我刚刚开始在 java 中使用 json 我不确定如何访问 JSONArray 中的字符串值 例如 我的 json 如下所示 locations record id 8817 loc NEW YORK CITY id 2873 loc UN
  • EnumResourceNames 问题 - 未知错误

    我最近正在使用辅助库 二进制模块中的资源 并遇到了一个奇怪的错误 我有两个本机 WinAPI 参考 DllImport kernel32 dll SetLastError true public extern static bool Enu
  • Android Lollipop 问题 - 无法将图像从相机加载到 ImageView

    在 android lollipop 之前的任何版本上 下面的代码都可以正常工作 由于某种原因 从 Android 的某个版本 大约 5 0 开始 每当从相机捕获图像时 屏幕都会向右和向后旋转 90 度 不仅我的设备上的自动旋转关闭 我的活
  • Eclipse 插件:将 Launch 命令组添加到 Custom Perspective

    我在网上查找了很多教程 但很难找到与 Launches 相关的任何内容 我正在实现一个 IDE 插件 该插件实现了自定义透视图 但除了 运行最后一个工具 按钮之外 我看不到任何 运行 或 调试 工具栏按钮 每次启动透视图时 我都需要进入 自
  • 在 MEF 中组合零件后自动调用方法

    有没有办法指定在组成部分后自动调用方法 该方法可以在组合部分或进行组合的类中调用 是的 如果你的类实现了IPartImports满意通知 http msdn microsoft com en us library system compon
  • 有没有适用于 Android 的照片库? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 由于Android中的内置照片库小部件不够好 很容易崩溃 我正在寻找第3方照片库库 如果您有好的选择请
  • 使用下拉菜单填充表单 - Access

    我正在尝试在访问中创建一个表单 该表单在顶部有一个下拉菜单 并将使用与所选内容相对应的记录填充表单的其余部分 我在网上查看了 2 个不同的指南 但都指向旧版本的 Access 我认为我遗漏了一些东西 所以 我做所有事情的顺序 我走到桌边拿表
  • Web Api 属性路由中的可选参数

    我想处理以下 API 调用的 POST v1 location deviceid appid 附加参数来自 Post Body 这一切对我来说都很好 现在我想通过允许 设备 id 和 或 应用程序 id 和 或正文数据为空来扩展我的代码 v
  • 需要获取文本文件中匹配字符串的行号

    我需要使用 PHP 获取文本文件的行号 我需要的线路是 想要这条线路 我尝试使用 file 将文件行放入数组中并使用 array search 进行搜索 但它不会返回行号 在此示例中 我需要返回 3 作为行号 file file file
  • PrimeFaces commandButton actionListener 未触发

    我无法获取我的actionListener in a
  • 如何从本地存储获取文件(pdf、jpg、docs)并创建文件[重复]

    这个问题在这里已经有答案了 我尝试使用意图数据 uri 创建文件 要创建文件 我开始这样的意图 val intent Intent Intent ACTION GET CONTENT apply addCategory Intent CAT
  • 使用程序检查已安装的软件

    我们需要创建一个程序 实际上我们被要求创建一个软件许可合规工具 我们如何检查机器内安装的软件 是通过注册表吗 在搜索时我看到一篇文章说我们需要研究 HKLM 的 卸载 子项 另外 我们是否还可以获得有关软件是否是免费软件 共享软件 从注册表