gpt4 book ai didi

c# - 禁用打印对话框弹出

转载 作者:太空宇宙 更新时间:2023-11-03 16:08:52 24 4
gpt4 key购买 nike

我有一个基于 Web 的 POS 系统,它需要从服务器获取信息并打印客户端。

我已经花了 2 天时间搜索,但仍然无法实现我想要的。

收银员将生成一个随机序列号和密码,然后将其保存在数据库中,生成后收据应打印到收银员的默认打印机。每个收银员都有自己的默认打印机。

打印工作正常,但显示打印对话框,我该如何打印收据但不显示打印对话框?

我尝试过很多 VB 脚本、jquery 和 Javascripts。都失败了。我正在打印 iFrame 的内容。

所有收银员都在使用 Windows 7 和 Internet Explorer 10。

以下按钮显示 iFrame。

protected void Generate_Click(object sender, EventArgs e)
{
myIFrame.Visible = true;
}

当页面在 iFrame 中加载时 Javascript 运行时将打印框架内容

protected void Page_Load(object sender, EventArgs e)
{
Page.ClientScript.RegisterStartupScript(this.GetType(), "Print", "PrintVoucher();", true);
}

Javascript

<script type="text/javascript" language="javascript">

function PrintVoucher() {
window.focus();
window.print();
return;
}
</script>

最佳答案

您应该能够为此使用已编写的 ActiveX 控件。它包含在 Windows 中,因此可以免费使用。

<script language='VBScript'>
Sub Print()
OLECMDID_PRINT = 6
OLECMDEXECOPT_DONTPROMPTUSER = 2
OLECMDEXECOPT_PROMPTUSER = 1
call WB.ExecWB(OLECMDID_PRINT, OLECMDEXECOPT_DONTPROMPTUSER,1)
End Sub
document.write "<object ID='WB' WIDTH=0 HEIGHT=0 CLASSID='CLSID:8856F961-340A-11D0-A96B-00C04FD705A2'></object>"
</script>

这实际上会覆盖您已经使用的原始打印事件。因此,如果你想打印一些东西,你可以继续使用

window.print();

希望这对您有所帮助。

关于c# - 禁用打印对话框弹出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18250161/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com