Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Firefox加载项:1)将Python脚本链接到加载项主代码| 2)JPM/NPM中的win32 api | 3)使用OS.file在Windows中设置文件属性_Python_Firefox Addon_Filesystems_File Attributes - Fatal编程技术网

Firefox加载项:1)将Python脚本链接到加载项主代码| 2)JPM/NPM中的win32 api | 3)使用OS.file在Windows中设置文件属性

Firefox加载项:1)将Python脚本链接到加载项主代码| 2)JPM/NPM中的win32 api | 3)使用OS.file在Windows中设置文件属性,python,firefox-addon,filesystems,file-attributes,Python,Firefox Addon,Filesystems,File Attributes,我想使用在Windows操作系统上创建隐藏文件。 使用JS/Node.JS似乎是不可能的 通过Python导入API,这是可能的(使用例程和文件\属性\隐藏参数) 那么,如何将Python脚本链接到Firefox插件的主JS代码呢?关于这件事,你能给我一些参考资料吗?我在网上找不到任何东西。XPCOM将被弃用。虽然这可以通过nsIFile实现,但我在这里不展示它,因为主线程的性能更差。目前推荐的文件系统访问方式是“OS.file” windows上隐藏的文件/目录 以下是使用OS.File执行

我想使用在Windows操作系统上创建隐藏文件。 使用JS/Node.JS似乎是不可能的

通过Python导入API,这是可能的(使用例程和文件\属性\隐藏参数)


那么,如何将Python脚本链接到Firefox插件的主JS代码呢?关于这件事,你能给我一些参考资料吗?我在网上找不到任何东西。

XPCOM将被弃用。虽然这可以通过
nsIFile
实现,但我在这里不展示它,因为主线程的性能更差。目前推荐的文件系统访问方式是“OS.file”

windows上隐藏的文件/目录 以下是使用OS.File执行此操作的方式:

OS.File.setPermissions(
        OS.Path.join(OS.Constants.Path.desktopDir, 'my hidden file.txt'),
          {
            winAttributes: {
                hidden: true
            }
        }
)
.then(x => console.log('success:', x), y => console.error('failure:', y));
这会将桌面上名为
my hidden file.txt的文件设置为隐藏。以下是其他
winAttributes

*nix/Mac上的隐藏文件/目录 重命名或创建文件,使
作为其名称中的第一个字符,并且该文件处于隐藏状态。使用OS.File这是通过
OS.File.move
函数完成的,因为重命名只是文件系统上的一个移动:

OS.File.move(
        OS.Path.join(OS.Constants.Path.desktopDir, 'my hidden file.txt'),
        OS.Path.join(OS.Constants.Path.desktopDir, '.my hidden file.txt')
)
.then(x => console.log('success:', x), y => console.error('failure:', y));
这会将桌面上的文件从
my hidden file.txt
重命名为
.my hidden file.txt
,从而使其隐藏

平台API 如果需要使用平台API,则无需使用python。我们有js C类型:

以下是一些关于js ctypes的文档:

下面是类型和函数声明的库/集合:


您能不能不使用这个按钮?为了实现这一点而导入一种完整的语言似乎有些过头了。是否有什么原因使您特别需要一个隐藏文件(在windows上)。扩展的Mac/Linux用户呢?安卓呢?为什么不使用-which可以跨平台工作?“在jpm中提供”您是指npm吗?我已经知道了?它说它有完整的win32 API,其中包括
SetFileAttributes
。但是你也可以只使用Windows的特定部分?这样,您就不必找出扩展和节点之间的某种连接,所以我相信唯一的解决方案就是使用API。不幸的是,OS.file只提供有关*现有*文件的信息。相反,存储对象应该特定于一个页面(HTML文档),特别是在浏览器中打开的页面:我需要一个文件来验证常规数据,并且事先不知道哪个页面处于活动状态。在*nix系统中,隐藏不是问题,事实上你知道你只需要把“.”放在隐藏处就可以了。嗯,没错,没错。您可以使用OSFile检查隐藏属性。也许你可以用我的第一句话来修改它?似乎表明您可以使用XPCOM启动命令shell并向其传递命令。回答得很好!我确信Python/win32 API方法对于这一点来说太过分了。答案很好!第二个链接是我所缺少的!谢谢大家!我添加了如何在Linux/Mac上使用
OS.File
重命名您必须使用
OS.File.move
重命名操作仅仅是文件系统上的移动操作,这可能并不直观。