【问题标题】:C# problem with Packing the supporting files with EXE, while publishing the project发布项目时用 EXE 打包支持文件的 C# 问题
【发布时间】:2010-12-21 14:22:27
【问题描述】:

我正在使用 Visual Studio 2005(.net 版本为 2.0+)来创建 Windows 应用程序。项目的功能与理想的设计相匹配,发布项目只有一个问题。

我使用 MouseHover 方法更改用于制作有吸引力的 UI 的图片(图像),当我将鼠标指针悬停在图片上时 .. 一些其他图片被加载到它的位置 .. 在 mouseleave 方法中相同的图片被保留回来。

现在的问题是在调试此功能正常工作时, 但是当发布和使用时,窗口不会加载图像(因为安装的文件夹不包含这些图像)..如何绑定图像,文本文件等支持文件带有EXE的xml之类的文件??
我的意思是有什么理想的方式来发布项目吗??

【问题讨论】:

    标签: c# .net


    【解决方案1】:

    在您的项目中,确保在 Copy To Output Folder 属性 (F4) 上将图像设置为 Copy AlwaysCopy if Newer

    这应该确保在进行 XCopy 部署时,图像将位于正确的文件夹中(您可能需要更改查找图像路径的逻辑,以便应用程序在正确的目录中找到它们)。

    【讨论】:

    • @Oded,感谢您的宝贵回复和您分享知识的时间.. 我将尝试在我的 SDK 中找到这些属性,:) 顺便说一句,在调试时,我在 DEBUG 中复制了相关文件文件夹所以..文件路径很简单,文件名本身 ..
    • @Oded,抱歉,文件在 SDK 中不直接可见,但它们在代码中被调用(使用)(使用图片框)。我可以覆盖可见项目文件,如 Resx、designer.cs 等,但无法编辑此设置,请告诉我.. 我该怎么做?
    • @infant 程序员 - 我假设图像包含在项目中。如果您点击图片然后点击F4,您应该能够看到该属性。
    • @Oded,是的,我落后了 :P .. 我点击 查看所有文件 然后 selected Debug 文件夹中的每个图像文件添加到项目中,然后可以更改属性 :)) 完成的赞许 :)) 非常感谢 :)
    • @infant 程序员 - 很高兴我能帮上忙 :)
    【解决方案2】:

    如果您正在使用将为您的应用程序生成 .MSI 的部署项目,只需右键单击该项目,单击添加文件,然后从您的项目目录中选择图像。

    这些文件将(默认情况下)部署到应用程序目标目录中,您的最终用户应用程序将能够访问它。

    【讨论】:

    • 很高兴看到您解决此问题的简单方法 :) 感谢您的宝贵建议,我一定要去尝试一下 :) 问候。
    • 只需要再执行一个程序来更改属性“COPY ALWAYS”:)(如“ODED”所建议的那样)感谢一百万您宝贵的时间和回答:)
    【解决方案3】:

    您可以将它们打包为嵌入式资源。

    要嵌入它们,请确保在解决方案资源管理器中选择资源时,将“属性”窗口中的“构建操作”设置为“嵌入的资源”。

    这是一个关于如何嵌入图像的示例项目示例:How to use embedded resources in .Net

    【讨论】:

    • 感谢您的宝贵回复和您的知识:) 我一定会去的。 :) 问候。
    猜你喜欢
    • 1970-01-01
    • 2021-01-12
    • 2016-03-20
    • 1970-01-01
    • 2014-07-26
    • 2023-03-10
    • 1970-01-01
    • 2023-03-13
    • 1970-01-01
    相关资源
    最近更新 更多