问题标签 [cabwiz]

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 投票
3 回答
7730 浏览

msbuild - 如何从命令行为智能设备 cab 项目创建 inf 文件?

我正在尝试让我的持续集成从命令行的 msbuild 中创建构建智能设备 cab 项目。我发现的所有内容都说使用从 Visual Studio 中构建项目时创建的 inf 文件(带有 cabwiz)。有没有办法使用 .vddproj 文件创建 inf 以便我可以将它与 cabwiz.exe 一起使用?

0 投票
1 回答
2255 浏览

installation - WinCE CabWiz 错误:“inf 包含不受支持的 DirID”

在为我们的产品构建 windows mobile cab 时,windows CE CAB 向导 (CabWiz.exe) 有时会返回错误:

错误:文件 c:\docume~1\build\locals~1\temp\wiz3340.inf 包含不受支持的 DirID

当使用超过 998 个文件、~260 个目录或未转义 % 符号(使用另一个 %)时,可能会发生此错误,但这些不适用于我们的案例。

有没有人遇到过这个问题?谢谢!

0 投票
2 回答
946 浏览

visual-c++ - 从 Visual C++ dll 启动 cab 文件

有谁知道如何从 Visual C++ dll 启动 cab 文件,该文件在 windows mobile 上安装应用程序时用作设置 dll。基本上,我需要 dll 来检测是否未安装紧凑框架并在需要时运行所需的 cab 文件。

多年来,我一直在谷歌搜索类似的东西,但没有运气。当然,这已经完成,并且有一些例子。非常非常非常感谢您的帮助。托尼

0 投票
1 回答
2902 浏览

windows-ce - 在 Windows CE 上安装 cab 文件时出错

我在用于创建 cab 的 .inf 文件中使用宏时遇到问题,特别是在设置InstallDir字符串时。如果我做这样的事情:

然后一切正常。但是,如果我这样做:

然后在尝试安装 cab 时出现以下错误(在我的设备上双击它):“MyAppName 未成功安装。请再次运行安装程序。”

这似乎只适用于内置宏字符串。我可以%AppName%毫无问题地使用。也许有一些注册表设置没有正确设置,通常会解析%CE1%宏?

关于发生了什么的任何想法?

编辑:我的设备没有\Program Files目录。似乎%CE1%宏总是解析为该路径,如果InstallDirinf 文件中指定的不存在(最后一个目录部分除外,则安装失败。手动创建\Program Files修复了问题。由于我使用的很多设备使用他们的 Program Files 目录有不同的路径,有没有一种通用的方法可以让安装程序默认为实际的 Program Files 目录?我想我唯一的另一个选择是不指定路径并强制用户选择一个?

0 投票
1 回答
6074 浏览

windows-mobile - 在哪里可以找到 CabWiz.exe

我正在重置我的开发机器,但我似乎不记得我在哪里得到了 CabWiz.exe(用于为 windows mobile 创建安装 cab 文件)。

是在某个包中的 MSDN 下载上吗?或者别的地方?有人知道吗?

我安装了 Windows Mobile 5 SDK,我认为这就是我所需要的,但我想我还需要其他东西。

我问了 MS Concierge,他们说它带有平台构建器(无论如何我都会安装),但路径与我所拥有的不同。

它位于 C:\Program Files\Microsoft Visual Studio 9.0\SmartDevices\SDK\SDKTools\cabwiz.exe,他告诉我它位于 \CEPB\Bin\cabwiz.exe。我担心我错过了其他东西......


后记:对,所以,我没那么聪明。我的 MSBuild 脚本找不到

  • C:\Program Files\Microsoft Visual Studio 9.0\SmartDevices\SDK\SDKTools\cabwiz.exe

这是有充分理由的,因为我安装在 64 位操作系统上。所以现在在

  • C:\Program Files (x86) \Microsoft Visual Studio 9.0\SmartDevices\SDK\SDKTools\cabwiz.exe

有时我只是超级短视!

0 投票
1 回答
1410 浏览

visual-studio-2008 - 从 VS2008 的 Smart Cab 项目中排除 setup.dll

我在 CE5 和 WM6 上运行的安装程序中添加了一些自定义操作。该安装程序工作正常并且构建良好。然而,有一个烦恼。setup.dll 已部署到设备,此文件不是必需的。

我已经阅读了几个关于创建 setup.dll 文件、MSDN 甚至移动 SDK 的网站。他们都陈述了相同的步骤。

  1. 创建您的 C++ dll 项目。
  2. 确保输出名为 setup.dll。
  3. 在您的 cab 项目上单击 CE 设置 DLL,浏览应用程序文件夹,添加输出并选择您的设置项目。(您不能选择本地目录,它始终是目标机器上的目录)

现在这确实有效并生成了一个自定义 cab 安装程序。然而,如前所述,setup.dll 被复制到应用程序文件夹中,即使安装后不需要它(甚至卸载时也不需要)

我试图通过在其属性中将 exclude 设置为 true 来排除 setup.dll。所有这些都不包括文件a all,因此缺少setup.dll 时要构建的cab 文件。

因此,我得到的唯一解决方案是手动更改 cab .inf 文件

其中 Files.Common4 指向机器本地的 setup.dll 文件。进行此更改意味着它用于构建 cab 文件,但不会复制该文件。

无论如何在visual studio中进行此更改,还是总是手动编辑.inf文件并使用cabwiz.exe手动构建cab文件?

0 投票
1 回答
822 浏览

windows-mobile - 带有 cabwiz.exe 的 NAnt exec 任务失败

我在 Windows 7 Professional 上使用 NAnt 0.90。

我正在尝试使用 NAnt 构建 CAB 文件。NAnt 正在使用执行任务让 CabWiz 使用 inf 文件构建 CAB 文件。构建失败,但如果我从命令行使用 CabWiz 而不是 NAnt,我可以构建 CAB 文件。

这是我的 NAnt 构建文件的相关部分:

CabWiz 生成的 cab_build_errors.err 文件包含 2 个警告和一个非常一般的错误消息:

当我从命令行构建 CAB 时,我收到相同的 2 个警告,但没有错误。这是我用来从命令行构建它的内容:

更新:

我能够使用以下命令从命令行重现错误:

不同之处在于我没有指定 inf 文件的完整路径。是否有一个变量或其他东西可以用来让 NAnt 传递完整路径,而无需在构建脚本中明确包含完整路径?只有构建文件目录的东西可以工作。

0 投票
1 回答
202 浏览

windows-mobile - 是否可以让 Windows Mobile 保留卸载后从 .cab 文件安装的一些文件?

我正在制作 .cab 文件,用于在移动设备(Windows Mobile 6.5)上部署我的应用程序。我使用 cabwiz.exe “手动”创建它,因为 Visual Studio 2008 存在 CAB 项目的问题(它们描述得很好,本地化文件是一个问题)。

一切都很好,除了当用户卸载应用程序时 Windows Mobile 会删除所有已安装的文件。我想在卸载后保留一些文件,以防安装另一个版本的应用程序。

现在,在卸载期间保留文件不被删除的唯一方法是重命名它们。有没有更好的做法?

0 投票
1 回答
729 浏览

windows-mobile - WCELOAD 无法安装压缩的 CAB 文件

我想通过替换文件柜中的文件来操作我们使用 CABWIZ 生成的(未签名的)CAB 文件之一。目前我正在使用Microsoft.Deployment.Compression.Cab.dll此任务(提取所有文件,替换目标,重新创建文件柜),只要我不启用压缩,它就可以很好地工作。

一旦我启用压缩,WM 6.5.3 将不再安装 CAB 文件:

CABFILE安装不成功。

CABWIZ生成的原始文件是压缩的,所以我知道WM中的WCELOAD可以处理压缩文件。我搜索了 Microsoft 库的配置选项,但没有找到。

有没有办法使用 Microsoft 库创建压缩 CAB,或者是否有任何其他库可用于此任务?有很多库可以操作 CAB 文件,但我找不到有关可以创建与 WCELOAD 兼容的压缩 CAB 文件的库的信息。

更新:经过一番研究,我发现 WCELOAD 支持 MSZIP 算法,而 Microsoft 库使用 LZX。所以我正在寻找一个能够使用 MSZIP 算法创建压缩 CAB 文件的库。

0 投票
2 回答
3765 浏览

visual-studio-2008 - 在 Windows 8.1 中使用 VS2008 创建 Cab 失败

最近我升级到 Windows 8.1。

在为我的 windows mobile 旧项目之一尝试 craete CAB install 后,我收到此错误:

这是inf文件

在此错误之后,我注意到该[RegKeys]部分是空的,因此向 cab 添加了一些寄存器,并将我的 inf 文件的最后一部分更改为:

但仍然没有创建出租车。并且错误只是更改为:

Windows 8.1 和 vs 2008 有什么问题吗?这个项目在我以前的窗口中运行良好。