64位Windows 7 fopen prn

时间:2011-09-09 19:03:19

标签: windows-7 printing

我正在使用我的古董Borland Builder 5和Windows 7 64位。

  1. fptr = fopen(“\ prn”,“wb”)失败。 “prn”,“prn:”也失败了。

  2. fptr = fopen(“HP8 lj4”,“wb”)成功。但不打印任何东西。 “HP8 lj4”是打印机的名称;在控制面板中,或通过“net view hp8gig”。

  3. 控制台命令{print / D:“HP8 lj4”shopping.ln}说“shopping.ln当前正在打印” - 但也没有打印任何内容。

  4. 当然我一直在打印机上打印东西。我漂亮的ASCII TSE编辑器可以做到。

  5. 有人知道如何从Windows 7中的控制台程序进行打印吗?

    // 2011年9月12日星期一下午5:29后来我意识到我的“HP8 lj4”正在打印到具有该名称的文件。我试着在这里发表评论,但显然失败了......

2 个答案:

答案 0 :(得分:1)

星期二9/13/2011 4:05 pm。从Windows 7等中的控制台“prn”导向程序打印的方法是“net use lpt1:\ hp8gig \ UrPrinter / PERSISTENT:YES”。 “UrPrinter”必须“共享”。这就是全部;我可怜的小控制台程序打印好了。除了天赋之外,我感到困惑的一个原因是所需的打印机是本地。它连接到计算机 - 但通过USB。执行此操作后,将打印命令行,如“copy file / b prn”。

我之前明白这一点 - 我发现它是在我写的“printnet.bat”文件中,从另一台计算机访问网络打印机 - 但显然我忘记了。

所以我之前提到的网站上的代码被打破了 - 一些错别字 - 甚至在它工作时,都没有。也就是说,我仍然不知道如何以编程方式做“网络使用”的事情。

答案 1 :(得分:0)

星期一9/12/2011 5:49 pm。好的一般问题是如何重定向尊敬的& 古董“PRN”设备在Windows 7机器上有用的东西。我不知道 怎么做。一位老乡 http://comsci.liu.edu/~murali/win32/NetworkPrint.htm有一些代码 就像它可能再次打印PRN,但他的计划也建议尝试 在我愚蠢的程序中我想要的打印机的网络名称 - 这是有效的。 即,我坚持像

这样的代码
  if (stricmp(name,"prn")==0) {
    name =
#if W7
      "\\\\hp8gig\\HP8 lj4"
#endif
  }

我可以使用环境变量创建更复杂的东西,或者 也许我会弄清楚那个人的PRN事情....