问题标签 [ipersistfile]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1000 浏览

com - 如何从内存中加载 IPersistFile?

我在 C# 中使用 IPersistFile 加载文件,然后将其作为 IFilter 读取:

这工作正常。

但是,我想从内存而不是磁盘路径加载文件内容。那可能吗?IPersistFile 接口除了提供路径字符串之外没有显示任何其他方式,因此似乎既不能使用内存映射文件也不能使用字节数组。

0 投票
1 回答
233 浏览

visual-c++ - 如何检查 Windows 中是否存在快捷方式?

在我的项目中,我需要为特殊对象创建一个快捷方式。我使用 IPersistFile::Save 来实现。

现在我有一个为特殊对象创建多个快捷方式的新要求:“objectname-shortcut”、“objectname-shortcut(2)”、“objectname-shortcut(3)”、...

如果我直接调用 IPersistFile::Save ,新的快捷方式将覆盖旧的快捷方式。所以我需要检查是否已经存在一些快捷方式。如果是,我将向 IPersistFile::Save 传递一个新名称“objectname-shortcut(n)”。

我知道快捷方式本质上是一个文件,我可以使用 API CreateFile 来检查它是否存在。但我想知道还有其他方法吗?

我试过 IPersistFile::Load,但它总是返回 E_FAIL,即使快捷方式实际上存在。

谢谢。

0 投票
0 回答
185 浏览

winapi - 通过 IPropertyStore 多次使用 IPersistFile::Load

我正在遍历一堆.lnk文件并获取有关它们的信息。

对于我这样做的每个文件,这是 js-ctypes 但这是一个 winapi 问题。我删除了错误检查并简化了代码:

但是ppropvar.pwszVal出来的是我IPersitFile::Load编辑的第一个文件的 SystemAppUserModelID,这是预期的吗?我必须CoUninitializeCoInitialize每个循环或其他东西来解决这个问题吗?

谢谢

0 投票
0 回答
193 浏览

delphi - IPersistFile Save() 保存 PDF 文档时返回 0x80004001 E_NOTIMPL 错误

我正在使用 Delphi 2007。IPersistFile.Save()在将文档加载到 Ole 容器后尝试调用时出现“未实现”异常。Acrobat Reader 10 及更高版本存在问题。相同的代码适用于 Acrobat Reader 9。

我试图在 Adob​​e 论坛上找到一些解决方案,但没有成功。也许有人以前有同样的问题。

我正在使用这样的代码: