質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

コマンドライン

コマンドライン(別名:Command Line Interface)は、ユーザに命令の入力を促す(プロンプト)文字列の表示を行い、すべての操作をキーボードを用いて文字列を打ち込む事でプログラムを走らせるユーザインターフェースです。

Q&A

解決済

2回答

26099閲覧

コマンドラインからprintやcopyでネットワークプリンタでの印刷ができません

SST8897

総合スコア155

Windows 10

Windows 10は、マイクロソフト社がリリースしたOSです。Modern UIを標準画面にした8.1から、10では再びデスクトップ主体に戻され、UIも変更されています。PCやスマホ、タブレットなど様々なデバイスに幅広く対応していることが特徴です。

Windows

Windowsは、マイクロソフト社が開発したオペレーティングシステムです。当初は、MS-DOSに変わるOSとして開発されました。 GUIを採用し、主にインテル系のCPUを搭載したコンピューターで動作します。Windows系OSのシェアは、90%を超えるといわれています。 パソコン用以外に、POSシステムやスマートフォンなどの携帯端末用、サーバ用のOSもあります。

コマンドライン

コマンドライン(別名:Command Line Interface)は、ユーザに命令の入力を促す(プロンプト)文字列の表示を行い、すべての操作をキーボードを用いて文字列を打ち込む事でプログラムを走らせるユーザインターフェースです。

0グッド

1クリップ

投稿2017/02/08 11:51

編集2017/02/08 15:04

###前提・実現したいこと
Windowsのコマンドラインから、
type con > (コンピュータ名)\(プリンタ共有名)
などとして印刷がしたいです。
できないならそれでもよいのですが、原因というか理由が知りたいです。

プリンタは共有設定をしてある{共有設定をしないと(コンピュータ名)\(プリンタ共有名)とできない}、LANでつないであるプリンタです。

###発生している問題
以下の入力例のようにやると、typeコマンドをリダイレクトしたりcopyコマンドを使っても何も起こりません。
しかしnotepad.exe /pt 云々だとプリントがちゃんとできます。

追記:printコマンドについては回答で教えていただいたデバイス指定の/D:をつけても印刷できないのは、教えて!gooのprintコマンドでプリントできない質問にあるように、

MS-DOS 5.0用のPRINT.EXEは、Windowsのコマンドプロンプトでは動作しません。

本来、PRINT.EXEはMS-DOS 5.0動作中に「常駐してバックグラウンドで」印刷を行います。

しかし「常駐してバックグラウンドでの動作」は「Windowsのコマンドプロンプトではサポートされてない」ので「PRINT.EXEは、プリンタにイニシャライズコマンドを送信後、常駐しようとして常駐できず、なにもしないで終る」のです。

というのが原因...かとも思いますがネット上にはコマンドプロンプトでprintコマンドが使えているような情報も有るんで詳細はわかりません。

###該当のソースコード

notepad.exe /pt "c:\Users(ユーザー名)\t.text" "\DESKTOP-0S6C7JD\CanonMG6330" rem これだとプリントがちゃんとできる! type con > \DESKTOP-0S6C7JD\CanonMG6330 rem エラーもなにもおこらない(印刷できない) copy t.text \DESKTOP-0S6C7JD\CanonMG6330 rem エラーもなにもおこらない(印刷できない) print t.text /D:\DESKTOP-0S6C7JD\CanonMG6330 rem 「C:\Users(ユーザー名)\t.textは印刷中です」表示がでる(印刷できない) rem 追記:https://oshiete.goo.ne.jp/qa/3793052.htmlのNo.1の回答が原因?

###試したこと
まず
type con > prn や type con > lpt1 を試してみました。
それだと「ファイルが見つかりません」と言われるので、
Yahoo知恵袋でのコマンドプロンプトでのUSBプリンタなどの使用の質問をみて、プリンタの共有設定をして、
type con > \DESKTOP-0S6C7JD\CanonMG6330

copy t.text \DESKTOP-0S6C7JD\CanonMG6330
を試してみました。がプリントできなかったので質問しました。
(でもnotepad.exe /ptだとプリントできる)

なお、MS Officeやブラウザなど普通のWindowsアプリケーションからは印刷ができます。pingもちゃんと応答があります。

###補足情報(言語/FW/ツール等のバージョンなど)
Windows10 (10.0.14393)です。
プリンタはCanon MG6330で、無線にてLANに接続しています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

今更ですが、(と言うより、気が付かなかった)

今のプリンタでは、昔ながらの copy とか、print とかでは、印刷できません。 正確には、大半のインクジェット、レーザープリンタでは、ですね。

まず、I/F が シリアル(RS232C)、パラレルでないですね。とすると、上記のコマンドでデータ転送できるか?
USBの場合、WinXp辺りまでは、USBxxでアクセスできたようなのですが、それ以降は無理みたいです。(レジストリから、ポート名を探したが、結構、大変)
ネット接続だと、ftp とか使って、Port 9100(? ちょっと自信が無い)辺りにデータを送り付ける事は可能です。(Unix/Linuxだと、lpr コマンド?)

また、印刷コマンドが、各社独自(かつ、非公開)になって、半角英数字くらいならば、印刷するものもありますが、まず、大半は、無視(or エラー)されます。
Windowsアプリ(notePadも)の場合、プリンタドライバを介する事で、ビットイメージに変換し、独自の印字コマンドを送っています。

あとは、テキストファイルをプリンタドライバを介して、プリンタに送るツールがあるかどうかですが、、、ちょっと知りません。(作る事は難しくなさそうですが)


全く無理? と思って検索したら、Windowsでも lprコマンドが使える設定があるようです。(手元のコマンドプロンプトはNGだったが) そこで、PostScriptファイルを送れば、良い、、なんてのがありました。(数社)
ただ、PostScriptをサポートしているプリンタもそう多くは無いと思います。 (ビジネス向けの一部)

投稿2019/05/04 03:56

pepperleaf

総合スコア6383

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SST8897

2019/05/04 03:59

回答ありがとうございます! なるほど...難しそうですね。(素直に大昔のプリンタでも買ってきたほうが簡単かもしれません)
pepperleaf

2019/05/04 04:10

今でも売ってる、ドットインパクト系プリンタは、互換性大事なので、テキストデータを送り付ければ、大半は印刷すると思います。ただ、安く無いし、五月蠅いですが。 インクジェットは、少し前の機種で、試したんですが、ダメでした。(ドライバ出力(ファイル)を送ったら、印字したんで、コマンドの問題かと)
SST8897

2019/05/04 04:25

現行品でもモノを選べば使えるというわけですね! 追加情報ありがとうございます。
guest

0

ベストアンサー

print t.text /D:\DESKTOP-0S6C7JD\CanonMG6330

/D: が必要では?
プリンタ持ってないので試せませんが、、、

投稿2017/02/08 13:20

hikochang

総合スコア648

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SST8897

2017/02/08 13:51 編集

回答ありがとうございます! その通りでした。printコマンドでデバイスを指定する/D:が必要だったみたいで、/D:をつけたらエラーメッセージは出ずに、「C:\Users\(ユーザー名)\t.textは印刷中です」と表示されるようになりました。 しかし、やはりプリンタは動きませんでした...。 [教えて!gooのコマンドプロンプトでprintコマンドで印刷できないという質問](https://oshiete.goo.ne.jp/qa/3793052.html)にて、printコマンドで印刷ができない原因っぽいのを見つけられました。 >MS-DOS 5.0用のPRINT.EXEは、Windowsのコマンドプロンプトでは動作しません。 >本来、PRINT.EXEはMS-DOS 5.0動作中に「常駐してバックグラウンドで」印刷を行います。 >しかし「常駐してバックグラウンドでの動作」は「Windowsのコマンドプロンプトではサポートされてない」ので「PRINT.EXEは、プリンタにイニシャライズコマンドを送信後、常駐しようとして常駐できず、なにもしないで終る」のです。 だそうです。
SST8897

2019/05/04 03:14 編集

というわけで2年後の今も解決には至っていませんが、未解決のままほっといてしまったので今更ベストアンサーにさせていただきました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問