Yapsy查看整个文件系统中的插件

2024-09-29 22:00:28 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个应用程序,它使用YAPSY作为我们的插件框架。该程序指定一个默认的插件目录,还允许用户指定一个目录(保存在XML文件中):

    # Get the default plugin directory, using XML
    path = os.path.expanduser('~')
    xml = xml_controller.Controller(path + '\.cxvrc.xml')
    xml.load_file()
    xml.get_plugin_directory()
    directory = ["plugins", xml.get_plugin_directory()]

    # Load the plugins from the default plugin directory.
    manager = PluginManager()
    manager.setPluginPlaces(directory)
    manager.setPluginInfoExtension('plugin')
    manager.collectPlugins()

问题在于,无论用户的插件在文件系统的哪个位置,它都会加载它们。实际上,它忽略了XML文件查询的结果字符串。为什么会这样?什么的例子

^{pr2}$

返回的是一个字符串:“C:\Documents and Settings\achilds”。我认为collectPlugins()方法应该检查我在setPluginPlaces(directory)中提供的目录列表。在

你知道为什么这会在用户的文件系统上找到所有插件(不管他们指定了哪个插件目录)?在

谢谢你


Tags: 文件thepath用户目录插件defaultget
1条回答
网友
1楼 · 发布于 2024-09-29 22:00:28

好吧,我已经找出了罪魁祸首。在仔细研究了YAPSY PluginManager是如何工作的之后,这似乎是我的目的。PluginManager.locatePlugin()查看给定的目录,然后使用手术室步行(给定路径)检查给定路径下的每个文件夹。在

不知不觉中,我将目录设置为在“C:\Documents and Settings\achilds”中查找,然后将插件放在桌面上的位置:“C:\Documents and Settings\achilds\desktop”。所以,PluginManager.locatePlugin()做了它的设计,搜索了“C:\Documents and Settings\achilds”中的所有目录,找到了我放在桌面上的目录。在

相关问题 更多 >

    热门问题