打印文档和对话框中的 C# 错误在 VS 中有效,但在发布我的项目后无效

C# error in printdocument and dialog works in VS but not after publishing my project

private void bPrint_Click(object sender, EventArgs e)
    {
        curitems = 1;
        page = 1;
        count = 1;
        printDocument1.DocumentName = tBPor.Text;
        logo = new Bitmap("Pgd_glava.jpg",true);
        printDialog1.Document = printDocument1;
        printDialog1.AllowSelection = true;
        printDialog1.AllowSomePages = true;
        printPreviewDialog1.Document = printDocument1;
        ToolStripButton b = new ToolStripButton();
        b.Image = new Bitmap("print.png");
        b.DisplayStyle = ToolStripItemDisplayStyle.Image;
        b.Click += printPreview_PrintClick;
        ((ToolStrip)(printPreviewDialog1.Controls[1])).Items.RemoveAt(0);
        ((ToolStrip)(printPreviewDialog1.Controls[1])).Items.Insert(0, b);
        printPreviewDialog1.Document = printDocument1;
        printPreviewDialog1.ShowDialog();
    }

这是我的代码。我编写了我的代码,所以在我得到我想要打印的内容后,它会打开一个打印预览 dialong,并在其中将打印按钮换成 print dialong 按钮,最后打印它。我在 Whosebug 的一个问题中找到了如何做到这一点。

无论如何,这在 Visual Studio 中调试时工作得很好。但是当我发布项目时,它给了我 this error.

如果有人知道该怎么办,我将不胜感激,因为我找不到确切的原因,同时我正在寻找解决方法。

提前致谢!

问候托马斯!

因此,如果有人遇到同样的问题并发现这个问题,修复实际上非常简单,但我花了一些时间来查明。我的问题是我从项目文件夹中的文件生成位图图像,但没有将它们添加到资源中。所以当我发布我的程序时,那些并没有随之转移。简单的解决方法是添加它们的屁股资源并从那里生成它们 替换:

logo = new Bitmap("Pgd_glava.jpg",true);

与:

logo = Properties.Resources.Pgd_glava;

对我来说确实是菜鸟犯的错误,但直到现在我才发布我编写的程序。