问题标签 [manifest]

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 回答
709 浏览

windows - 调试构建应用程序定位发布 CRT 程序集

我们有一个 c++ 应用程序,我最近从 Linux/gcc 移植到使用 Visual Studio 2005 在 Windows 上构建。该应用程序使用第 3 方库,该库仅提供使用优化的 CRT DLL 的 DLL(即它们不提供链接到调试 CRT DLL)。对于 VS2005,这似乎不是问题 = 调试版本在 System32 目录中找到了优化的 CRT DLL。

我现在正在尝试使用 VS2008 构建和运行我们的应用程序,但调试构建无法运行,因为它找不到优化的 CRT DLL (msvc690.dll)。VC9 CRT DLL 被隐藏在具有 GUID 样式名称的目录中 - 我相信这是一个并行程序集,应用程序应该使用应用程序的清单来定位它。但是,在应用程序 exe 中构建和嵌入的清单仅指定调试 CRT 程序集:

我不是 Windows 专家(至少不再是),所以这对我来说是全新的。这里的正确解决方案是什么?我需要告诉清单编译器将优化的 CRT DLL 添加到程序集中吗?如果是这样,我该怎么做?

0 投票
1 回答
718 浏览

.net - 以编程方式抑制注册表虚拟化

在通用的基于.NET 的组件的上下文中,它可以托管在各种场景中 - 即,无论是否为 64 位,交互过程与否,我需要在受 UAC 虚拟化影响的区域中写入注册表。但是,我想防止此类访问被虚拟化,以便每次执行都不受当前上下文的变幻莫测(即,不希望从 HKLM 读取一个读数,因为它有一个清单,另一个来自 HKCU。 .VirtualStore 因为它没有)。

换句话说,我正在寻找类似于 KEY_WOW64_64KEY的东西,或者reg.exe REG_KEY_DONT_VIRTUALIZE表明我在任何情况下都不想被虚拟化。或者是否有某种形式的规范化相关语法我可以用你指定 >260 字符文件名的方式强制它?

如果执行用户对相关注册表项没有适当的权限,我对代码失败感到满意。

这个问题与这个关于检测注册表虚拟化的问题密切相关,但在这种情况下检测肯定是不够的。

0 投票
26 回答
133210 浏览

c# - MissingManifestResourceException 是什么意思以及如何解决它?

情况:

  • 我有一个名为 的类库RT.Servers,其中包含一些资源(类型为byte[],但我认为这并不重要)
  • 同一个类库包含一个返回这些资源之一的方法
  • 我有一个简单的程序(引用了那个库),它只调用那个单一的方法

我收到MissingManifestResourceException以下消息:

找不到适合指定区域性或中性区域性的任何资源。确保“Servers.Resources.resources”在编译时被正确嵌入或链接到程序集“RT.Servers”中,或者所有所需的附属程序集都是可加载的并且是完全签名的。

我从来没有玩过文化,也没有玩过大会签名,所以我不知道这里发生了什么。此外,这适用于使用相同库的另一个项目。有任何想法吗?

0 投票
5 回答
3857 浏览

visual-studio - 调试清单中带有“uiAccess=true”的应用时出现 Visual Studio 2008 错误

我有一个 C# WinForms 应用程序,其清单文件中的“uiAccess”设置为“True”。当我尝试在 Windows 7 x64 (RTM) 下的 Visual Studio 2008 SP1 中启动/调试它时,我收到此错误:

运行辅助功能应用程序需要遵循帮助中描述的步骤。

帮助按钮是一个断开的链接,单击确定只是关闭应用程序。它经过数字签名,我可以在 Windows 资源管理器中正常启动它。这是 MS Connect 中的相同错误,但不幸的是它已关闭:

https://connect.microsoft.com/VisualStudio/feedback/ViewFeedback.aspx?FeedbackID=384183

问题:使用 Vista/Win7 x64(启用 UAC)的其他人能否确认他们遇到了同样的问题?有没有人以前见过这个问题并且知道如何解决它?

0 投票
2 回答
2259 浏览

windows - 每个应用程序配置文件 bindingRedirect 不适用于 Dll

我创建了一个简单的 Win32 应用程序,通过包含对版本 6 commctl32.dll 的清单依赖项来演示 XP 上的 UXtheme 然后我创建了一个简单的 Win32 dll,使用 构建它ISOLATION_AWARE_ENABLED,并使用指定 Comctl32 版本 5 和 6 的嵌入式清单对其进行测试.dll

我使用这种方法成功地让 exe 和 dll 使用不同版本的 comctl32.dll。使用 5 的 exe 和 6 版的 dll,反之亦然。

然后,我将应用程序和 dll 重置为具有 comctl ver 5 清单依赖项。并引入了一个应用配置文件:

现在,当我运行我的应用程序时,应用程序显然被重定向到 commctl v6 - 使用启用的 XP UXTheme 清楚地显示对话框。但是,该 dll 没有被重定向,而是使用 commctl 的非主题版本 5。

文档中没有提到用于执行 bindingRedirects 的 per-dll 配置文件。并且尝试创建一个不会做任何事情。

我也知道从一个主要版本的程序集到另一个版本的绑定重定向不是受支持的场景,但我真的只是使用 commctl32 作为测试机制的一种明显简单的方法。

如何重定向 dll 的依赖程序集的版本?

0 投票
2 回答
7326 浏览

winapi - 如何使用作为资源嵌入的清单?(Windows XP/Vista 风格的控件)

我有一个作为 Windows 资源嵌入的清单。但是应用它的正确方法是什么?

进一步来说:

我有我的 .manifest 文件。这是使应用程序使用 Windows XP/Vista 视觉样式中的控件的标准方法。当通过与 .exe 位于同一目录并适当命名来应用时,它可以工作。

然而,这种方法相当麻烦。我希望我的 .exe 是独立的。显然,这是可以做到的,因为我计算机上的许多应用程序都设法使用现代风格,而无需单独的清单文件。

所以我环顾四周,最后发现将清单嵌入为资源。因此,我已将此行添加到我的 .rc 文件中:

但接下来我该怎么办?

编辑:如果对您有所帮助,我的程序是用 D 语言编写的,并使用 Digital Mars D 和资源编译器构建。没有IDE。但我希望任何在 C(++) 中工作的解决方案,当使用命令行工具构建时,也能在 D 中工作。

0 投票
1 回答
1151 浏览

uac - 使用 C++ (UAC/gksudo/etc.) 以管理员/root 身份打开/写入文件

我正在开发的应用程序需要能够跨 Linux、OSX 和 Windows [Vista] 编辑某些受保护的文件。通常,当应用程序需要以提升的权限执行某些操作时,会出现一个密码请求对话框,要求用户验证他们是否希望允许应用程序以管理员身份执行这些操作。

我相信一般来说,Windows Vista 使用 Manifest 文件,OSX 有授权库(https://developer.apple.com/mac/library/documentation/Security/Reference/authorization_ref/Reference/reference.html),Linux 有一个各种 sudo 前端。

是否有一种普遍可接受的跨平台处理方式?我不希望我的应用程序必须以 root 用户身份运行,但我确实希望它能够打开受保护的文件以进行读/写操作,然后恢复到正常用户模式。

0 投票
3 回答
4969 浏览

windows - 如何为 Windows 安装程序创建清单?

我们的应用程序有一个安装程序,必须下载并以管理员权限运行,就像许多其他安装程序一样。但是,安装程序未命名为“setup.exe”,因此 Windows 不会自动将其检测为需要提升才能运行。

坦率地说,更改安装程序名称以使事情正确提升听起来很混乱。这篇文章谈了很多关于 UAC 和提升的内容,它说您可以使用清单来使某些东西需要授权。

所以,我们只想为我们的安装程序创建一个清单。但是,我们如何确保清单存在?如果用户只是下载 our_application_v13.exe,我们如何确保他们也获得清单?AFAIK 在这种情况下,清单必须是一个名为“our_application_v13.exe.manifest”的文件。

由于他们只是从我们的网站下载文件,我们如何确保他们也获得清单?我们能否以某种方式将其构建到可执行文件中,或者以其他方式将可执行文件标记为需要提升?我们使用的是数百年前的安装工具,我们无法更改,因此它没有任何与此相关的功能。

谢谢!

0 投票
9 回答
81538 浏览

java - 使用 Eclipse 为 JAR 文件自动创建清单文件

如何Manifest为我已经创建的一组 JAR 文件创建一个文件。

我使用 Eclipse 创建我的 JAR 文件。

有没有更好的方法来创建一个具有Manifest.

0 投票
3 回答
37383 浏览

windows - 如何使用 mt.exe 将清单添加到可执行文件?

我正在尝试使用 Windows SDK 中的 mt.exe 将清单添加到没有清单的可执行文件中,使用以下命令行:

不幸的是,当我这样做时,我收到了这个错误:

当然,在文件中找不到资源 - 该文件没有清单,这就是我想添加一个的原因。

如何将清单附加到可执行文件?这不应该很简单吗?