【问题标题】:Windows API Code Pack: Where is it? [closed]Windows API 代码包:它在哪里? [关闭]
【发布时间】:2014-07-27 17:08:19
【问题描述】:

为什么它自己和它曾经存在的证据被删除了?

仅在半年前,它在频道 9 上被宣传为 Something that should be in everyones pack——今天,Microsoft Archive 已“退休”,并且完全保持沉默,API 代码包曾经存在过。

【问题讨论】:

  • 也许this 也很有趣。
  • 我知道这是一个老问题,但它在我的搜索结果中很早就出现了,所以我想我应该加 0.02 美元。我没有深入研究,但我认为 Windows API 代码包可能已被Windows 10 WinRT API Pack 正式取代。

标签: .net windows-api-code-pack


【解决方案1】:

我无法回答为什么的问题,也不想推测(也许其他更接近这个问题的人可以告诉我们发生了什么),但幸运的是它并没有完全消失。看起来二进制文件已被其他开发人员重新上传到 NuGet,但请注意,这些包都不是来自 Microsoft 的官方包。

以下包由 NuGet 用户aybe 上传:

像往常一样,安装它们:

Install-Package WindowsAPICodePack-Core
Install-Package WindowsAPICodePack-ExtendedLinguisticServices
Install-Package WindowsAPICodePack-Sensors
Install-Package WindowsAPICodePack-Shell
Install-Package WindowsAPICodePack-ShellExtensions

【讨论】:

  • 有多个similar packages on NuGet由不同的人创建。显然,这些包都不是“官方”包,也没有一个列在“Microsoft 和 .NET”提要中。
  • 谁能肯定地说这些软件包与以前直接从 Microsoft 提供的软件包相同?
  • 现在有一个来自 Microsoft 的“Microsoft.WindowsAPICodePack-Core”。
  • @DefenestrationDay:假设你在谈论this one,那是我最初链接的那个,它不是来自微软,而是来自碰巧只有两个包的副本的人,并且不是一切。
  • 虽然不是来自 Microsoft,但令人放心的是,aybe 的 Nuget 包是源代码 的上传,而不是二进制文件。例如,对于常见的文件对话框,您可以自己构建它,并跟踪调用以查看实际工作是通过内置的 .NET dll(“shell32.dll”等)完成的。请参阅 ShellNativeMethods.cs 获取 @ 987654331@ 定义。
【解决方案2】:

有人将uploaded 发送到 GitHub。

【讨论】:

    【解决方案3】:

    包含与原始可执行自解压器相同的文件(即源代码、二进制文件和文档)的 zip 文件位于此处:https://github.com/jamie-pate/KeepSync/blob/master/contrib/Windows%20API%20Code%20Pack%201.1.zip

    【讨论】:

    • 这应该是正确的答案。解压并添加二进制引用。像魅力一样工作
    【解决方案4】:

    好像也有人发过on CodePlex

    【讨论】:

    • 这不是全部,只是一些贡献扩展。
    • 在我看来,所有核心库都没有样本和测试
    • 你说得对,它确实包含包装本身,这与描述会让你相信的相反。虽然它只是 1.0 版,所以它缺少一些东西。
    • 请不要使用那个项目,因为它已经过时了(它基本上是 vanilla 1.0,正如 kjbartel 正确指出的那样)。
    • 小修正:它是 1.0 加上描述中所述的贡献。
    【解决方案5】:

    这是原始 Windows API CodePack 1.1 的 link(或 this 链接)。

    【讨论】:

    • 哦,我记得“Windows API Code Pack 1.1\source\WindowsAPICodePack\Core\Interop\TaskDialogs\TaskDialogNativeMethods.cs”文件中有一个错误。您应该交换以下行:“mainIcon = i;”和“spacer = IntPtr.Zero;”。所以,顺序是:“spacer = IntPtr.Zero;”然后是“mainIcon = i;”。
    • 我刚刚检查过了——它有效。我没有移动这个文件,所以它就在原处。
    • 对不起,伙计,但我已经检查了文件 - 它在它的位置,并且链接有效。 Google 云端硬盘是否适合您?
    • 谁投了反对票——解释一下?
    • 可能是因为这些链接指向私人托管的 EXE 文件。 1) 有些人不信任来自非官方来源的 exe 文件(即使它们已签名)。 2)这个答案有订阅这些主机的生命周期。也许其他原因......
    【解决方案6】:

    原始链接已失效,但 Microsoft 员工已将 v1.1 原始代码包上传到 nuget。在 nuget 搜索 winapicp,或使用此链接: Windows API Code Pack for Microsoft .NET Framework

    【讨论】:

    • 是什么让你相信这是微软员工?
    • 因为在 MS 托管的论坛中,这被版主标记为答案,版主本身就是 MS 员工social.msdn.microsoft.com/Forums/windowsdesktop/en-US/…
    • @user3082079 仅仅因为它被 MS 员工标记为答案并不意味着该包是由 MS 员工正式发布的。即使他/她在,也无法保证其由 MS 正式发布。请注意,MS 员工并不代表 MS 他/她发布的所有作品。 MS Moon light 项目允许员工发布他们自己的作品,而不是 MS 的名字。
    • 快速注意,这个包不包含 PDB。
    猜你喜欢
    • 2014-04-22
    • 1970-01-01
    • 2012-07-29
    • 1970-01-01
    • 2010-11-06
    • 2012-04-17
    • 2021-12-06
    • 2011-03-18
    • 2017-08-16
    相关资源
    最近更新 更多