【问题标题】:What is best for desktop widgets (small footprint and pretty graphics)?什么最适合桌面小部件(小尺寸和漂亮的图形)?
【发布时间】:2010-09-09 21:52:03
【问题描述】:

如果我想创建一个漂亮的小部件以在后台运行且内存占用很小,我会从哪里开始构建 Windows 应用程序。它的目标是使更新的项目列表保持在 Web 服务之外。类似于 RSS 阅读器。

注意:数据层将通过 REST 连接,我已经有一个 C# dll,我认为它不会对足迹影响太大。

显然我想使用一个不错的 WPF 项目,但是 ~60,000k 的初始大小太大了。

*C# Forms 应用程序大约是 ~20,000k

*C++ 形式 ~16,000k

*CLR 或 MFC 小得多,小于 5

有没有办法去除 WPF 或表单?如果我坚持使用 CLR 或 MFC,那么让它变得漂亮的最简单方法是什么。 (我在 MFC 的经验是制作非常好的奖励表格)

更新:澄清上述大小是进程运行时使用的内存,而不是可执行文件。

【问题讨论】:

  • “非常奖励表格”还是“非常尴尬的表格”?
  • 你能重新标记这篇文章吗? “WPF”有错字(显示为“WFP”

标签: .net c++ wpf .net-3.5


【解决方案1】:

为什么不使用 Silverlight?这是一个article,它谈到了这样做。

【讨论】:

    【解决方案2】:

    回复:

    更新:澄清上述尺寸, 内存被用作 进程运行,而不是可执行文件。

    好的,当您运行一个小型 C# Win Forms 应用程序时,为其保留的最小 RAM 量约为 2 兆,也许是 4 兆。这只是它创建的一个工作集。它没有积极使用所有这些内存或类似的东西。它只是在前面预留了那么多空间,因此它不必在以后根据需要对更多内存进行长时间/缓慢/昂贵的请求。

    预先保留较小的尺寸可能是错误的优化。

    (如果真的很重要,您可以通过 pinvoke 调用来减少工作集。请参阅pinvoke for 'set process working set size'

    【讨论】:

      【解决方案3】:

      如果它确实必须尽可能小,请使用纯 C 并直接与 Windows API 对话。

      但是,由于 .NET dll 无论如何您都将加载 CLR,所以我会选择不那么痛苦的方法,并且简单地使用 C# 作为 UI。

      【讨论】:

        【解决方案4】:

        如果您打算使用“已经有一个 C# dll”,那么目标计算机上必须已经安装了 .net。

        在这种情况下,C# win 表单应用程序不需要接近 20 兆。最小的 hello world 类型 win 格式为 7 KB。

        【讨论】:

          猜你喜欢
          • 2012-11-23
          • 1970-01-01
          • 1970-01-01
          • 2013-02-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多