VBからプリンタに対し両面印刷、カセット、手差しを指定したいのですが、
どのようにプログラミングすればよろしいのでしょうか?

できればサンプルプログラムがあれば幸いです。

環境 
Win2000
VB6.0
プリンタ Canon LASER SHOT LBP-950
宜しくお願いいたします。

このQ&Aに関連する最新のQ&A

A 回答 (1件)

Printer.PaperBinは動かないので、API関数でやるか


http://www.galliver.co.jp/writing/nikkei_tokushu …

あるいは、質問204497の回答1の方法で出来るかもしれません。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=204497

細かいプリンタ設定をしたいのなら、Canon LIPS IV Printer Driver SDKかな
http://www.canon-sales.co.jp/open-mie/support/sd …
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qプリンターのインクについて

エプソンのPX-A640というプリンターを買いました。このプリンターのインクは顔料インクで、実は以前使っていたプリンターの詰め替えインクが染料インクです。色々調べてみると顔料インクは目詰まりしやすく、染料インクは目詰まりしにくいと言うことがわかりました。印刷の綺麗さにはあまりこだわらないのですが、枚数を沢山印刷するためにどうしても詰め替えインクでないとインク代が高くてしょうがありません。顔料インクようのこのプリンターに染料インクを詰め替えても問題はないでしょうか。プリンターさえ故障しなければ印刷の質にはあまりこだわらないのですが。

Aベストアンサー

 原理を考えたら判りますよ

染料用のインクジェットプリンターのインク噴出し口の大きさよりも顔料用プリンターのほうが大きいので、余分なインクが出て行きます

印刷に必要では無い余ったインクはその辺に付着して時間が経つと固まります、固まりが酷くなると(大きくなると)元の吹き出し口を塞いでしまってインクが出て来なくなります

それで故障。

QVB6.0でVB上にExcel

VB上にExcelオブジェクトを貼り付け、特定の条件に当てはまったとき既存のExcelファイルのSheet1を乗せたいという場合は、どうすればいいのでしょうか?

Aベストアンサー

条件に該当する場合に
オブジェクトではなくピクチャーコントロールとしてクリップボードにSheet1をコピーしてピクチャーコントロールにClipboard.GetData()で貼り付ける。
または
Sheet1を1行づつ読み込みテキストに書き出す。

Qインクジェットプリンターの互換インクは問題ないか?

インクジェットプリンターの互換インクですが、昔、純正インクを使わずにプリンターが故障し、メーカーから「純正インクを使っていないでしょう」といわれ、その後はずっと、純正インクを購入しています。

最近は、大手家電店でも通常で互換インクも売っていますから、故障したりはしないのでしょうか。

キャノンのインクジェットプリンターMP610のBCI-7eシリーズです。

Aベストアンサー

純正インクを使っていても非純正のインクを使っていても壊れるものは壊れます。
純正インクを使っていて壊れないなんて夢のような話はありません。

メーカーは、インクで利益を上げていますから純正インクをとなります。
特にキヤノンなんて、互換インクメーカーと裁判をしたりしていますから、よい例ですね

メーカーは、純正インクでしか動作確認を行っておりませんから、純正インクを使えってなります。互換インクでは動作確認をしていないから、どのようになるか、分からないし責任を持てないから、純正インクをってなります。 メーカーとしては当たり前のことを言っているだけです。 


ちなみに、”キヤノン”が日本名では正しい会社名だったりします。

QVB6.0で作成したプロジェクトのVB.NETへのアップグレードでエラー発生

卒業研究でVBを使う予定です。
先輩の研究を引き継ぐことになっているのですが、VB.NETでプロジェクトを開くことができなくて困っています。

先輩が開発したのはVB6.0で、今研究室のパソコンに入っているのはVB.NETです。
VB.NETのアップグレードウィザードを使えばVB6.0のプロジェクトをVB.NETで編集できることまで調べたのですが、いざアップグレードしようとしたときに以下のようなエラーが出てしまいます。
・エラー文---------------------------------------
アップグレードに失敗しました:例外が発生しました:参照されたコンポーネント
Slider
Slider
Slider
Slider
Slider
Slider
に、デザイン時のライセンスがありません。
--------------------------------------------------
アップグレードできるようにするにはどうすればいいでしょうか?
よろしくおねがいします。

Aベストアンサー

Sliderコントロールが認識されていないようなので
VB.NET で新規プロジェクトを作成し、コンポーネント参照で
Sliderコントロールを参照可能に設定する。
その後、VB6.0の既存フォームモジュールをプロジェクトへ追加する。
以上

Qプリンターのインク同じメーカーなら使えますか?

エプソンのプリンターを使っていましたが、故障してしまい使えなくなりました。
新しくプリンターを買う予定ですが、今まで使っていたプリンターはすでに販売しておらず、未使用のインクが残っています。
もったいないのでできれば使いたいのですが、インクの箱に書いてある適合機種以外のプリンターでも同じエプソンのプリンターなら使えたりしますか?
それとインク詰まりはプリンターをあまり使わないと起こるものなんですか?
回答よろしくお願いします。

Aベストアンサー

> 適合機種以外のプリンターでも同じエプソンの
同じメーカーでも同じ型番のインクを使う機種でないと無理です。
カートリッジの形状、チップ、インクの質が異なります。
インクの箱に書いていない新しい機種でも同じ型番のインクを使うならOK。
メーカーのサイトとかに消耗品としてインク出ているから、手持ちのインクが同じ物か確かめればわかります。

使えないならリサイクルショップやオークションで売るか廃棄するか、プリンター本体を修理に出すかですね。

> インク詰まりはプリンターをあまり使わないと起こる
1ヶ月とか放置していたらノズルが乾いて詰る原因になります。
インクも自然蒸発します。
よくあるのが年賀状くらいしか使わないで、次のシーズンに使おうと思ったら乾いて詰っていた。

最低でも週1回とか電源を入れる、月に1回は無駄な印刷をするとかは必要です。
電源を入れれば自動でノズルのクリーニングが行われます。当然インクは消耗しますが詰ってからのクリーニングで浪費するのや修理に比べたら微々たる物です。

QVB6.0のString関数に代わるVB2008のそれは?

2009年1月27日にVB 2008Expressをダウンロードしたばかりの初学者です。
ですから、色々とわからないことだらけです。
で、今回は VB6.0のString関数に代わるVB2008のそれ。

? String(12, "*")
************

Function Strings(ByVal C As Char, ByVal L As Integer) As String
  Return Space(L).Replace(" ", C)
End Function

少しは探しましたが、適当なのがなくてStrings関数を作成してしまいました。
2週間程度の初学者。
しかも、文字列関連のヘルプは昨日に初めて紐解いたばかり。
ですから、「適当なのがない」との判断はかなり怪しいものです。

そこで、「VB6.0のString関数に代わるVB2008のそれは、これですよ!」という回答をお願いします。

Aベストアンサー

'ああっ、思いっきり書き間違えてるorz

'5を外に出した
Dim s2 As String = new String(Char.ConvertFromUTF32(42),5)

'文字数を書くの忘れてる
Dim s3 As String = New String("ABC".toCharArray()(0),5)

Qプリンターインク

プリンターのインクはリサイクルインクではなく純正を使うべきという意見がありますが、私はリサイクルでもいいのではと思っています。プリンターメーカーは純正でないとインクに起因する不具合が生じても責任は持てないなどと言います。プリンターメーカーはプリンターそのものは安くしてもインクで利益を出しているという人もいます。純正インクは結構高いですから。そこでお尋ねするのですが、それでもやはり純正にすべきでしょうか、それともリサイクルで十分でしょうか。

Aベストアンサー

プリンタの修理屋です。

まず、法的な話を。
メーカーがどうしても非純正インクを使って欲しくなければ、「使用禁止」なんていう表現を使えばすむわけですし、ICチップなんていう甘い方法ではなく、もっとえげつない方法だってあるはずです。

でも、現状はICチップをつけたり、インクタンクのデザインを変更したりして、非純正インクメーカーの対応を遅らせる程度のことしか出来ていません。

実は、強力な手を打つと独占禁止法などに抵触する恐れがあるという事で、現状程度のことしか出来ません。


また、「プリンターメーカーはプリンターそのものは安くしてもインクで利益を出しているという人もいます。」と言うのは、少々誤解があって、「プリンタ産業はインクで利益を出すためにプリンタを作っている産業」というのが正しいです。
メーカーにしてみれば、インクが売れなければプリンタの開発費も回収できませんし、会社を維持するための利益も出ないわけです。


まあ、こういったことはユーザーには全く関係のない話ですし、好きな物をチョイスしてもらえば問題ないと思いますよ。


ただ、それに伴うプリンタの不具合は結構多く、プリンタ本体の買換え費用で赤字というケースも少なくないような気がします。
また、どうしてインク代で苦しむほど印刷するのかはいまだに疑問です。
個人ユーザーであれば、1年に一度か二度インクを1セット購入すれば済むような気もします。
私は仕事で使っていますけど、一ヶ月に1本程度です。
一ヶ月に1,000円程度のコストです。

どうして、その印刷物が必要なのかという理由は考えても良いのでは?
企業でコストダウンを考えるときは、まず印刷物を減らすことから始めますので。

プリンタの修理屋です。

まず、法的な話を。
メーカーがどうしても非純正インクを使って欲しくなければ、「使用禁止」なんていう表現を使えばすむわけですし、ICチップなんていう甘い方法ではなく、もっとえげつない方法だってあるはずです。

でも、現状はICチップをつけたり、インクタンクのデザインを変更したりして、非純正インクメーカーの対応を遅らせる程度のことしか出来ていません。

実は、強力な手を打つと独占禁止法などに抵触する恐れがあるという事で、現状程度のことしか出来ません。


また...続きを読む

QVB.NET(2008)を初めて1週間の初心者です.昔はVB6.0を少

VB.NET(2008)を初めて1週間の初心者です.昔はVB6.0を少し勉強したのですが,2008に移してから色々変わってしまってて,わからないことだらけなのでアドバイスをお願いします.

只今,PictureBox(640*480)に写し出した画像を二値化しようと取り組んでいます.
そこで,色成分を取り出す際に,以前(6.0)はPictureBoxに「.Point」をつけて取り出しをしていましたが,2008では何をあてはめて色の取り出しを行えばいいか全く分かりません….自分で色々と調べてはみたのですが,うまくいかなかったので,こちらの方でご意見を頂ければ幸いに思います.

以下は,6.0のときの色抽出のプログラム部分です.
For y = 1 To 480
For X = 1 To 640
pColor(X, y, 0) = main.Point(X - 1, y - 1) Mod 256 '赤の成分の取り出し
pColor(X, y, 1) = Int(main.Point(X - 1, y - 1) / 256) Mod 256 '緑
pColor(X, y, 2) = Int(Int(main.Point(X - 1, y - 1) / 256) / 256) '青
Next X
Next y

VB.NET(2008)を初めて1週間の初心者です.昔はVB6.0を少し勉強したのですが,2008に移してから色々変わってしまってて,わからないことだらけなのでアドバイスをお願いします.

只今,PictureBox(640*480)に写し出した画像を二値化しようと取り組んでいます.
そこで,色成分を取り出す際に,以前(6.0)はPictureBoxに「.Point」をつけて取り出しをしていましたが,2008では何をあてはめて色の取り出しを行えばいいか全く分かりません….自分で色々と調べてはみたのですが,うまくいかなかったので,こちら...続きを読む

Aベストアンサー

For x As Integer = 0 To PictureBox1.Width - 1
For y As Integer = 0 To PictureBox1.Height - 1
Dim color As Color = New Bitmap(PictureBox1.Image, PictureBox1.Size).GetPixel(x, y)

Debug.Print(color.R)
Debug.Print(color.G)
Debug.Print(color.B)

Next
Next

640*480のデータを出力しようとしたら、
私のパソコンが古いせいか、気の遠くなるほど
かかりそうでした。
30*30程度から、はじめてみた方がいいかも
でも、色情報が、ちゃんと、得られているか確かめていないので、
間違っているかも、間違っていたら、ごめん

For x As Integer = 0 To PictureBox1.Width - 1
For y As Integer = 0 To PictureBox1.Height - 1
Dim color As Color = New Bitmap(PictureBox1.Image, PictureBox1.Size).GetPixel(x, y)

Debug.Print(color.R)
Debug.Print(color.G)
Debug.Print(color.B)

Next
Next

640*480のデータを出力しようとしたら、
私のパソコンが古いせいか、気の遠くなるほど
かかりそうでした。
30*30程度から...続きを読む

Q古くなったプリンターでエコインクを使いたいが

新しいプリンターを購入してCanonのMP970をサブプリンターとして使う事にしました。
そこでMP970で互換インクに切り替えたいのですが、インクの残量がまだあります。
メーカーインクと混ざるとよくないという話をよく聞きます。
1色でもインクが無くなるとプリンターが動かなくなるので
互換インクを使っている方、インクの切り替えはどのように行ったか教えてください。

Aベストアンサー

>1色でもインクが無くなるとプリンターが動かなくなるので

インクは粒になって噴出後、沢山の粒の集合として混ざった色に見えるのです。
つまり、インクは紙の上でさえ混ざりません。

ちなみに、JIS規格の有る物や、同等製品、システム上規格に合致するものが互換品。
成分等違うので互換インクと呼べるものは存在しません。

使う使わないは、個人の自由。止めは致しません。
ただし、サードパーティー製インクを使用した場合、故障しても修理さえ受け付けて貰えない他、正確な色が出ない退色が早いなどのトラブルは自己責任です。

Qvb6.0のプログラム

今こんなプログラムを作っているのですがなぜか、足りない部分があると言われて困っております。
できれば教えてください。

ーーーーーーーーーーーーーーーー
from
ーーーーーーーーーーーーーーーー
残り30秒[ーーーーラベルーーーー]
000+000=000←(3つともlabel)
□-------------------□←HScrollbar max100 min0
[コマンドボタン]
[タイマー]←非表示
ーーーーーーーーーーーーーーーー
コード
Private intCount As Integer
Private intSecond As Integer
Private Sub cmdStart_Click()
Dim intNum1 As Integer
Dim intNum2 As Integer

If cmdStart.Caption = "Start" Then
intCount = 0
intSecond = 30
lblResult.Caption = ""
cmdStart.Caption = "OK"
tmrSecond.Enabled = True

ElseIf cmdStart.Caption = "OK" Then
If CInt(lblAnswer.Caption) = CInt(lblNum1.Caption) + CInt(lblNum2.Caption) Then
lblResult.Caption = lblResult.Caption & "○"
intCount = intCount + 1
Else
lblResult.Caption = lblResult.Caption & "×"
End If

intNum1 = Rnd() * 50
intNum2 = Rnd() * 50

lblNum1.Caption = intNum1
lblNum2.Caption = intNum2
End If
End Sub

Private Sub hsbAnswer_Change()
lblAnswer.Caption = hsbAnswer.Value
End Sub

Private Sub tmrSecond_Timer()
intSecond = intSecond - 1
lblTime.Caption = "残り" & intSecond & "秒"
If intSecond = 0 Then
tmrSecond.Enabled = False
MsgBox (intCount & "問正解")
cmdStart.Caption = "Start"
Else
End If
End Sub
どうぞよろしくお願いします。

今こんなプログラムを作っているのですがなぜか、足りない部分があると言われて困っております。
できれば教えてください。

ーーーーーーーーーーーーーーーー
from
ーーーーーーーーーーーーーーーー
残り30秒[ーーーーラベルーーーー]
000+000=000←(3つともlabel)
□-------------------□←HScrollbar max100 min0
[コマンドボタン]
[タイマー]←非表示
ーーーーーーーーーーーーーーーー
コード
Private intCount As Integer
Private intSecond As Integer
Private Sub cmdStart_...続きを読む

Aベストアンサー

#3です。
修正箇所としては・・・
1.lblAnswer を TEXTBOX にしてtxtAnswer 等にしま
  しょう。
2.intNum1 = Rnd() * 50 の前に call Randomize で
  乱数を初期化させましょう。
3.intNum1 = Rnd() * 50 ではなく、
  intNum1 = int(50 * Rnd + 1) にしましょう
4.○×の採点の後にtxtAnswer = "" としてクリア
  しましょう。
5.○×の採点の時にプログレスバーを操作しましょう

このくらいでしょうか・・・


このQ&Aを見た人がよく見るQ&A

人気Q&Aランキング