• ベストアンサー

プリンタ出力

c言語でプリンタへ出力する方法を教えてください, windows98でvisualc++5.0のms-dosを使っています。

質問者が選んだベストアンサー

  • ベストアンサー
  • lethe
  • ベストアンサー率50% (8/16)
回答No.2

すいません。スキル不足で「VCでMS-DOS」と言うのがわからないんですが、 要するに、DOS窓で動くPGでプリンターに直接印字したい・・・と言うことでしょうか? DOS上でプリンタに直接印字・・・・・・ それ自体はとても簡単で、方法はふたつあります。 ひとつは、DOSのリダイレクト機能を使って、コマンドラインで C:¥>prg > prn などと、「> prn」をつけて、出力先をSTDPRNにします。 ふたつめは、関数で出力先を以下のようにSTDPRNにします。 fprintf(stdprn、”hello world!”);   注意)ストリーム出力です。 それ位簡単なことなんですが・・・・ 恐らく、今の環境(WindowsのDOS窓で実行)では、デバイスの書き込みエラーになるでしょう。 何故だか解りますか? 何故なら、プリンターも含めた周辺機器は「ドライバー」が無いと動きませんよね? あなたのPCには、DOS窓用のDOSのプリンタ・ドライバーが組み込まれていますか? 古いPC-AT用プリンタが手に入れば、出来ないかもしれませんが、 一旦テキスト形式で出力し、Windows上でそのテキストをプリントするのが現実的かもしれません。 それか、せっかくVCを使っているのですから、APIを使えばもっと簡単なのですが・・・・ もう少し、あなたのやりたいことが具体的に解れば、アドバイスできるかもしれません。 困り度=3のようですので、補足していただければ私の出来る限りおつきあいいたします。

その他の回答 (1)

  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.1

ずっと昔、そんなこともしたことあるけど ちょっと記憶が定かでないのですが ファイルディスクリプタ4(ファイルポインタでなく)(いわゆる低レベル入出力関数を使う) で出力できたと思います。 または、ファイル名PRNでやってみてください。 ポートを使う方法もあるかと思いますが。

関連するQ&A

  • C言語でMS-DOSプロンプト入力でプリンタに出力する方法は?

    OS/Win98でVC++を使ってC言語を学習している初心者です. C言語のプログラムでMS-DOSプロンプト上のコマンド入力において プリンタに出力する方法を知りたいです. たとえばMS-DOSプロンプト上で C:>[プログラム名][ファイル名(XXX.txt)] と入力すればプリンターにおいて、入力した[ファイル名(XXX.txt)]が 出力されるようなプログラムを作成したいです. 主にプログラムの流れをどのようにすれば良いか知りたいです. 宜しくお願いします.

  • DOS画面をプリンタ出力

    MS-DOSプロンプトの画面をプリンタに出力されるプログラムを 作ろうと思いました。 #include <iostream.h> main(){ char ppp; cout << "pの入力でプリントします"; cin >> ppp; if (ppp=='p'){ cout << "pが入力された"; ここでプリンタ出力命令 } } プリンタ出力命令はどういう命令文を書ければいいのか 教えてください。

  • プリンターから出力できない

    キャノンのレーザープリンター(LBP-1810)をネットワークで繋いでいます。MacとWindowsXPのそれぞれにドライバーをインストールして、Macからは問題なく出力できますが、Windowsから出力することができません。インストール時にはプリンターを認識していますし、印刷状況を見ていると、印刷した瞬間にキューに溜まり、すぐに消えますが、プリンターからは何も出てきません。エラーなどもありません。どこをどうチェックすれば良いでしょうか。

  • カラーレーザープリンタ出力について

    デジカメで撮った画像をフォトショップで加工してイラストレーターで編集してカラーレーザープリンタで出力したんですけど, Macで出力するとWindowsで出力するより網点が目立つ(ドットが荒い)んです。プリンタはRICOH imagio Neo320C です。RICOHの方に検証していただいたのですが、理由がわからないとのことで、Macに関してよく説明して頂けなかったのでこちらに質問させて頂きました。(Mac OS10.2 PhotoShop7 Illustrator10。 Windowsの検証はRICOHでやってもらいました。画像はEPSでリンクで配置しました。足りないところがたくさんありますが随時補足いたします。)

    • ベストアンサー
    • Mac
  • 遠隔地のプリンタ出力

    会社のA支店、B支店、C支店にそれぞれインターネットに接続できるPC(OS:Win xp)とそのPCにプリンタが接続されています。 たとえばA支店のPCでWord文章を作成し、A支店のPCの操作のみでB支店、C支店のプリンタからその文章を出力するには、どのような方法がありますでしょうか? (B、C支店共、PCとプリンタには電源が入っていますが、無人の状態が前提です) B、C支店共、PCがなくてプリンタだけの構成で出力が可能であれば、それでも良しと考えます。 できるだけ低価格の方法を希望します。 良いアイデアを宜しくお願い致します。

  • MS-DOSからネットワークプリンタに出力できない

    キャノンLBP3800では普通に行えていましたが、LBP3500に変えたところできなくなりました。 LBP3500をWINDOWS2000のノートブックPCにUSB接続しています。 ネットワーク内の他のPCからWINDOWSからは正常に出力されます。 MS-DOS上で net use lpt1 \\James\CanonLBP3500 /persistent:yes を実行し、「正常に終了しました」の結果が返されました。 プリンとアウトユーティリティprtsを用いて prts /d:lpt1 aaa.txt /q を実行するとprtsは正常に出力しているようですが、 プリンタの反応はありません。 LBP3800の時は上の手順で実行できていました。 たいへん困っています。 どなたか、詳しいかた、ご教示お願いします。

  • プリンターの出力が終わらない

    TS6330をUSB接続で使っています。 年末にWin11のPCを購入しました。 出力すると正常に印刷はされるのですが、 「プリンターと通信できません」 というエラーがでます。 印刷待ち一覧を表示→印刷中止 を行わないと次の出力ができません。 回避策はあるのですが、非常に面倒です。 Win10の時は全く問題ありませんでした。 どうしたらよいですか? 参考までに Windowsプリンターテストページを出力すると 「正しくインストールされました」のメッセージが印刷されています。 ドライバーの種類:Type3-ユーザーモード ドライバーのバージョン:3.51.2.30です。 ※OKWAVEより補足:「キヤノン製品」についての質問です。

  • プリンターに出力できない

    DocuCentre-IV C4470を使っていますが、本日ドキュメントを出力できなくなりました。 状況としては、PC立ち上げ後資料をプリントアウトしようとしましたが出力されませんでした。 昨日までは正常に印刷できていました。 当然ながら、設定等の変更は行っていません。 プリンターのプロパティを確認したところ、「使用不可」となっています。 プリンタードライブの再インストールやプリンタの削除→再設定を実施。 最初にプリンタの削除→再登録時にはテストプリントは正常に出力されましたが、出力したい資料をプリントアウトしようとしたら、やはり出力されず、プリンタのプロパティは「使用不可」の表示となっていました。 LANは繋がっています。(ネットワーク上では他のPCを認識しています。) OSはWindows10(pro.)64bit PCは富士通のESPRIMO プリンタはXEROXの DocuCentre-IV C4470

  • Canonプリンターのlips LXでTeXのdviを出力

    windows Xp 上からTeXのDVIファイルを「dviout for windows」でCanonのプリンター(ドライバーはLIPS LX)で印刷すると,半角のコンマ,ピリオドが半角の空白となって出力されてしまいます。他のCanonのLIPS 3のプリンターや他社のプリンターではうまく出力されるので,ドライバーが原因だと思います。 対処方法など御存知の方,その方法を教えてください。宜しくお願いします。 なお,DVIをPDFなどに変換して出力する方法もありますが,図がずれることがあるので「dviout for windows」からの出力を考えています。

  • ドットインパクトプリンタへの出力

    NEC製のドットインパクトプリンタ(multiimpact700xx2)に出力プログラムを開発しています。 先日まではWindowsのテストページ等が印刷できていたのですが、 突然印字を指示するとプリンタの電源が落ちるようになってしまいました。 表示には「AL-09 パワーOFFしてください」と表示されます。 しかし、マニュアル等を見てもエラーが出ておらず問い合わせても回答が返ってきません。 現状は、ActiveReportの印刷イメージの出力先をドットインパクトのプリンタにして出力しようとしています。 実現の仕方の誤りや良い調査方法があればご教授ください。

専門家に質問してみよう