怎样才能改变打印机的打印方向?

masterkey 2000-08-09 04:57:00
我在用DataReport 做报表时发现一问题,向各位请教:
比如有两个不同的报表,一个是横向打印的,而另一个是纵向打印的,怎样才能实现不通过用户对话框方式就可以改变打印机的打印方向呢? 也就是用程序语句,用户完全不设置打印机属性就可以自由地打印这两个报表!
...全文
1099 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lisonlee 2001-08-20
  • 打赏
  • 举报
回复
楼上的朋友,你解决了这个问题吗,如果你看到此回复的话,请你帮个忙,我也碰到和你一样的问题,只是playyuer的程序不是很易懂,请你发一个解决此方法的demo给我,行吗?我的mail:lison@ssdnet.online.sh.cn 。先谢了。
masterkey 2000-08-11
  • 打赏
  • 举报
回复
我看playyuer的回答完全来自另外一个站点的内容,就给30分吧!
无言无忌 2000-08-10
  • 打赏
  • 举报
回复
何不使用Crystal Report, 它可以让你在设计报表时就确定用横向或纵向打印,绝不需要运行进行人工干预。Crystal Report只在VB5中提供。
Un1 2000-08-10
  • 打赏
  • 举报
回复
给你一个PrintDlg源码:

'clsPrintDialog.cls文件


Option Explicit
' =======================================================================
'
' CLASS : clsPrintDialog
' PURPOSE : Show a dialog to select a printer and to set printer
' properties. Selected printer will be set to Printer object
' WITHOUT CHANGING DEFAULT PRINTER.
' Printer object could print to selected printer then.
' This class work like "MS Common Dialogs" ShowPrinter method,
' but it set Printer object without changing default printer.
' HELP : Look "MS Common Dialogs" OCX help, it applies also to this
' class. All Flags constants are supported.
' NOTE : Do you have found any bug or improvement ?
' Please let me know, that's why I'm sharing source code.
' AUTHOR : ___________________________________________________
' Luca Minudel software designer
' Italy Conegliano(TV)
' voice & fax +39 (0)438 412280
' e-mail luca.minudel@nline.it
' WWW (italian language used)
' http://www.geocities.com/SiliconValley/Vista/4041
'
' =======================================================================
'
' --- API CONSTANTS
'
Private Const CCHDEVICENAME = 32
Private Const CCHFORMNAME = 32
Private Const GMEM_FIXED = &H0
Private Const GMEM_MOVEABLE = &H2
Private Const GMEM_ZEROINIT = &H40
Private Const DM_DUPLEX = &H1000&
Private Const DM_ORIENTATION = &H1&
'
' --- API TYPES DEFINITION
'
Private Type PRINTDLG_TYPE
lStructSize As Long
hwndOwner As Long
hDevMode As Long
hDevNames As Long
hdc As Long
Flags As Long
nFromPage As Integer
nToPage As Integer
nMinPage As Integer
nMaxPage As Integer
nCopies As Integer
hInstance As Long
lCustData As Long
lpfnPrintHook As Long
lpfnSetupHook As Long
lpPrintTemplateName As String
lpSetupTemplateName As String
hPrintTemplate As Long
hSetupTemplate As Long
End Type
Private Type DEVNAMES_TYPE
wDriverOffset As Integer
wDeviceOffset As Integer
wOutputOffset As Integer
wDefault As Integer
extra As String * 100
End Type
Private Type DEVMODE_TYPE
dmDeviceName As String * CCHDEVICENAME
dmSpecVersion As Integer
dmDriverVersion As Integer
dmSize As Integer
dmDriverExtra As Integer
dmFields As Long
dmOrientation As Integer
dmPaperSize As Integer
dmPaperLength As Integer
dmPaperWidth As Integer
dmScale As Integer
dmCopies As Integer
dmDefaultSource As Integer
dmPrintQuality As Integer
dmColor As Integer
dmDuplex As Integer
dmYResolution As Integer
dmTTOption As Integer
dmCollate As Integer
dmFormName As String * CCHFORMNAME
dmUnusedPadding As Integer
dmBitsPerPel As Integer
dmPelsWidth As Long
dmPelsHeight As Long
dmDisplayFlags As Long
dmDisplayFrequency As Long
End Type
'
' --- API DECLARATIONS
'
Private Declare Function PrintDialog Lib "comdlg32.dll" Alias "PrintDlgA" _
(pPrintdlg As PRINTDLG_TYPE) As Long
Private Declare Sub CopyMemory Lib "kernel32" Alias "RtlMoveMemory" _
(hpvDest As Any, _
hpvSource As Any, _
ByVal cbCopy As Long)
Private Declare Function GlobalLock Lib "kernel32" (ByVal hMem As Long) As Long
Private Declare Function GlobalUnlock Lib "kernel32" _
(ByVal hMem As Long) As Long
Private Declare Function GlobalAlloc Lib "kernel32" _
(ByVal wFlags As Long, _
ByVal dwBytes As Long) As Long
Private Declare Function GlobalFree Lib "kernel32" (ByVal hMem As Long) As Long
'
' --- PUBLIC ENUM
'
Public Enum PrinterConstants
cdlPDAllPages = &H0
cdlPDCollate = &H10
cdlPDDisablePrintToFile = &H80000
cdlPDHelpButton = &H800
cdlPDHidePrintToFile = &H100000
cdlPDNoPageNums = &H8
cdlPDNoSelection = &H4
cdlPDNoWarning = &H80
cdlPDPageNums = &H2
cdlPDPrintSetup = &H40
cdlPDPrintToFile = &H20
cdlPDReturnDC = &H100
cdlPDReturnDefault = &H400
cdlPDReturnIC = &H200
cdlPDSelection = &H1
cdlPDUseDevModeCopies = &H40000
End Enum
Public Enum ErrorConstants
cdlCancel = 32755
End Enum
'
' --- PRIVATE VARIABLES
'
Private intMinPage As Integer ' Local copy of Min
Private intMaxPage As Integer ' Local copy of Max
Private intFromPage As Integer ' Local copy of FromPage
Private intToPage As Integer ' Local copy of ToPage
' N.B. 0 >= Min >= FromPage >= ToPage >= Max
' If Max=0 then no limits.
'
' --- PUBLIC VARIABLES
'
Public Flags As PrinterConstants
Public CancelError As Boolean
'
' -- INITIALIZE
'
Private Sub Class_Initialize()
intMinPage = 0
intMaxPage = 0
intFromPage = 0
intToPage = 0
CancelError = False
End Sub
'
' -- PUBLIC MEMBERS
'
Property Get Min() As Integer
Min = intMinPage
End Property
Property Let Min(ByVal intNewValue As Integer)
intNewValue = IIf(intNewValue > 0, intNewValue, 0)
intMinPage = intNewValue
If intNewValue > intFromPage Then _
intFromPage = intNewValue
If intNewValue > intToPage Then _
intToPage = intNewValue
If intNewValue > intMaxPage Then _
intMaxPage = intNewValue
End Property
Property Get FromPage() As Integer
FromPage = intFromPage
End Property
Property Let FromPage(ByVal intNewValue As Integer)
intNewValue = IIf(intNewValue > 0, intNewValue, 0)
intFromPage = intNewValue
If intNewValue > intToPage Then _
intToPage = intNewValue
If intNewValue > intMaxPage Then _
intMaxPage = intNewValue
If intNewValue < intMinPage Then _
intMinPage = intNewValue
End Property
Property Get ToPage() As Integer
ToPage = intToPage
End Property
Property Let ToPage(ByVal intNewValue As Integer)
intNewValue = IIf(intNewValue > 0, intNewValue, 0)
intToPage = intNewValue
If intNewValue > intMaxPage Then _
intMaxPage = intNewValue
If intNewValue < intFromPage Then _
intFromPage = intNewValue
If intNewValue < intMinPage Then _
intMinPage = intNewValue
End Property
Property Get Max() As Integer
Max = intMaxPage
End Property
Property Let Max(ByVal intNewValue As Integer)
intNewValue = IIf(intNewValue > 0, intNewValue, 0)
intMaxPage = intNewValue
If intNewValue < intToPage Then _
intToPage = intNewValue
If intNewValue < intFromPage Then _
intFromPage = intNewValue
If intNewValue < intMinPage Then _
intMinPage = intNewValue
End Property
Public Function ShowPrinter() As Boolean
Dim PrintDlg As PRINTDLG_TYPE
Dim DevMode As DEVMODE_TYPE
Dim DevName As DEVNAMES_TYPE
Dim lpDevMode As Long, lpDevName As Long
Dim intReturn As Integer
Dim objPrinter As Printer
Dim strNewPrinterName As String
Dim blnCancel As Boolean
blnCancel = False
' Use PrintDialog to get the handle to a memory
' block with a DevMode and DevName structures
With PrintDlg
.lStructSize = Len(PrintDlg)
.hwndOwner = 0
.Flags = Flags
.nMinPage = intMinPage
.nFromPage = intFromPage
.nToPage = intToPage
.nMaxPage = intMaxPage
End With
'Set the current orientation and duplex setting
DevMode.dmDeviceName = Printer.DeviceName
DevMode.dmSize = Len(DevMode)
DevMode.dmFields = DM_ORIENTATION Or DM_DUPLEX
DevMode.dmOrientation = Printer.Orientation

DevMode.dmPaperSize = Printer.PaperSize
DevMode.dmScale = 2
DevMode.dmPaperLength = 148
DevMode.dmPaperWidth = 210

On Error Resume Next
DevMode.dmDuplex = Printer.Duplex
On Error GoTo 0
'Allocate memory for the initialization hDevMode structure
'and copy the settings gathered above into this memory
PrintDlg.hDevMode = GlobalAlloc(GMEM_MOVEABLE Or _
GMEM_ZEROINIT, Len(DevMode))
lpDevMode = GlobalLock(PrintDlg.hDevMode)
If lpDevMode > 0 Then
CopyMemory ByVal lpDevMode, DevMode, Len(DevMode)
intReturn = GlobalUnlock(lpDevMode)
End If
'Set the current driver, device, and port name strings
With DevName
.wDriverOffset = 8
.wDeviceOffset = .wDriverOffset + 1 + Len(Printer.DriverName)
.wOutputOffset = .wDeviceOffset + 1 + Len(Printer.Port)
.wDefault = 0
End With
With Printer
DevName.extra = .DriverName & Chr(0) & _
.DeviceName & Chr(0) & .Port & Chr(0)
End With
'Allocate memory for the initial hDevName structure
'and copy the settings gathered above into this memory
PrintDlg.hDevNames = GlobalAlloc(GMEM_MOVEABLE Or _
GMEM_ZEROINIT, Len(DevName))
lpDevName = GlobalLock(PrintDlg.hDevNames)
If lpDevName > 0 Then
CopyMemory ByVal lpDevName, DevName, Len(DevName)
intReturn = GlobalUnlock(lpDevName)
End If
'Call the print dialog up and let the user make changes
If PrintDialog(PrintDlg) Then
'First get the DevName structure.
lpDevName = GlobalLock(PrintDlg.hDevNames)
CopyMemory DevName, ByVal lpDevName, 45
intReturn = GlobalUnlock(lpDevName)
With PrintDlg
Flags = .Flags
intFromPage = .nFromPage
intToPage = .nToPage
End With
GlobalFree PrintDlg.hDevNames
'Next get the DevMode structure and set the printer
'properties appropriately
lpDevMode = GlobalLock(PrintDlg.hDevMode)
CopyMemory DevMode, ByVal lpDevMode, Len(DevMode)
intReturn = GlobalUnlock(PrintDlg.hDevMode)
GlobalFree PrintDlg.hDevMode
strNewPrinterName = UCase$(Left(DevMode.dmDeviceName, _
InStr(DevMode.dmDeviceName, Chr$(0)) - 1))
If Printer.DeviceName <> strNewPrinterName Then
For Each objPrinter In Printers
If UCase$(objPrinter.DeviceName) = strNewPrinterName Then _
Set Printer = objPrinter
Next
End If
On Error Resume Next
'Set printer object properties according to selections made
'by user
With Printer
.Copies = DevMode.dmCopies
.Duplex = DevMode.dmDuplex
.Orientation = DevMode.dmOrientation
.PaperSize = DevMode.dmPaperSize

End With
On Error GoTo 0
Else
GlobalFree PrintDlg.hDevMode
GlobalFree PrintDlg.hDevNames
blnCancel = True
If CancelError Then _
Err.Raise cdlCancel, "LM PrintDialog", "Cancel."
End If
ShowPrinter = Not blnCancel
End Function


'modStart.bas 文件:
Option Explicit

Sub main()
Dim P As New clsPrintDialog
P.Flags = cdlPDPageNums + cdlPDDisablePrintToFile + cdlPDNoSelection
P.Min = 1
P.FromPage = 3
P.ToPage = 5
P.Max = 100


Printer.PaperSize = 11
Printer.Orientation = 2

P.ShowPrinter


'Debug.Print Printer.DeviceName
'Debug.Print Printer.Copies
'Debug.Print P.FromPage
'Debug.Print P.ToPage
Debug.Print Printer.PaperSize
Debug.Print Printer.Orientation

' Write here Print Code with Printer Object...
End Sub

masterkey 2000-08-10
  • 打赏
  • 举报
回复
谁可以帮我一下呢?
playyuer 2000-08-10
  • 打赏
  • 举报
回复
方 法 1: 装VB6SP4,DataReport新添了Orientation属性
http://www4.netease.com/~askpro/msg21/qa85.htm
方 法 2:
用 一 个 CommonDialog:

Private Sub Command1_Click()
CommonDialog1.Flags = cdlPDPrintSetup
CommonDialog1.CancelError = True
On Error GoTo ErrorHandle:
CommonDialog1.ShowPrinter '必 须 Show出 来 且 "确 定 "才 能 修 改 纸 方 向
'Me.Refresh
'Command1.Refresh
On Error GoTo 0
DataReport1.Show vbModal
ErrorHandle:
End Sub
下 载 例 程 rptdemo.zip。
方 法 3: 引 用 PageSet.Dll(参 考 :微 软 的 Knowledge Base的 文 章:“Q198901 Sample PageSet_exe Programmatically Changes Default Printer Orientation” 并 下 载 PageSet.exe,或 orientation.zip。
但 有 时 报 出 "报 表 宽 度 大 于 纸 的 宽 度 "的 错 误 。 (参 考 :微 软 的 Knowledge Base的 文 章:“Q197915 PRB Report Width is Larger than the Paper Width” (我 认 为 没 什 么 用 ,不 知 所 云 ))
该 方 法 并 未 真 正 将 Printer改 方 向 (即 :Printer.Width与 Printer.Height并 未 交 换 ),因 此 我 建 议 :
Private Sub DataReport_Initialize()
Const ErrX = 0 '误 差 经 验 值
Dim adoRecordset As New ADODB.Recordset
adoRecordset.Fields.Append "Fld1", adVariant, , adFldIsNullable + adFldMayBeNull
adoRecordset.Open
Set Me.DataSource = adoRecordset
'下 一 句 非 常 关 键 重 要 ,可 以 极 大 地 减 少 "报 表 宽 度 大 于 纸 的 宽 度 "的 错 误 !
'当 Form1.Option1.Value为 真 时 "横 打 ",否 则 "纵 打 "
Me.ReportWidth = IIf(Form1.Option1.Value, MyMax(Printer.Width, Printer.Height),
MyMin(Printer.Width, Printer.Height)) - Me.LeftMargin - Me.RightMargin-ErrX
End Sub
Private Function MyMax(a As Long, b As Long) As Long
MyMax = IIf(a > b, a, b)
End Function
Private Function MyMin(a As Long, b As Long) As Long
MyMin = IIf(a < b, a, b)
End Function
这 样 就 可 以 极 大 地 减 少 "报 表 宽 度 大 于 纸 的 宽 度 "的 错 误 !
注 :"横 打 "即 :打 印 以 纸 的 宽 边 作 顶 部 。 "纵 打 "即 :打 印 以 纸 的 窄 边 作 顶 部 。

masterkey 2000-08-10
  • 打赏
  • 举报
回复
老兄你的办法也不行啊,通过测试不能改变系统默认打印机的打印方向,而且我的要求是不能出现对话框(如果可以出现对话框的话那就简单多了,直接调用VB的Commondialog控件就好了),要直接控制,不让用户参与。 我用DocumentProperties等API也不行, 该怎么办呢,各位帮我想想办法吧!!!!
HCC PR2高级存折打印维护手册 基本操作 l 打印自检 (每修复一台打印,须进行此操作) 1. 关闭电源. 2. 按住操作面板上的Station2键不放,再打开电源,直到打印初始化动作完成才松手. 3. 插入一张A4大小的纸到进纸器槽的中部,这时打印自动地将纸对齐并到正确的打印位置. 4. 然后循环打印出一张测试配置表. l 参数设置 1. 关闭电源. 2. 同时按住操作面板上的Station1和Station2键不放, 再打开电源, 直到打印初始化动作完成才松手. 3. 在进纸槽中插入一张A4规格的纸. 4. 打印开始吸纸, 并打印出两行提示信息. 5. 按Local键一次, 打印进入设置状态. 6. 若按Station1键, 认可并保存参数; 若按Station2键, 更改参数, 直到将需要更改或设置的参数设置完毕. 7. 参数更改完毕后, 按Local键一次, 再按Station1键一次, 听到打印发出两声清脆的鸣叫后, 关机. (此时更改好的参数已保存) l 监控程序的刷新 将打印与主机的 COM1口接好; 打开打印的上盖,按住[STATION1]和[LOCAL]键开机,盖上上盖; 在主机上运行FLASHPR2 VXXX.PR2; 打印将按8个模块下载,下载完后,将自检一次; 在重新设置前需先恢复出厂参数,再设置. l 打印与主机的接法: 主机 ( 9孔) 打印(25针) 2-----------------------------------------------------------2 3-----------------------------------------------------------3 5-----------------------------------------------------------7 注意:3.10以上的版本需先按[STATION2]键开机后,等动作停了再按[STATION1]键恢复出厂参数后再下载。 l 设定光敏管参数 PR2出厂时所有的光敏参数已经调整好,在使用中,由于使用非标准的纸张或要改变光敏参数,则必须重新调整光敏参数。 PR2共有四个光敏检测器: 纸张检测器 包括2组发光管和接受管,位于前进纸槽中,用于检测是否存在打印介质。发光管发出的光通过光纤传送。 前进纸检测器 与纸张检测器同属一组,包括四组发光管和接受管,发光管发出的光通过光纤传送。用于打印文件前调整纸张。 纸边检测器 安装于打印头上,用于检查打印纸的边界。 后进纸检测器 没有安装。 下图为光敏组件的示意图: 打印后端 光纤 ○ ○后进纸检测器 纸边检测器(位于打印头上) ○ 长光纤 长光纤 ○ ○ ○ ○ ○ ○ ○ ○1 3 2 4 短光纤 短光纤 1 2 纸张检测器 纸张检测器 打印前端 光敏参数设置步骤: 1. 关闭电源. 2. 打开打印上盖. 3. 将打印头移至打印最左边. 4. 同时按住[Station1] [Local] [Station2] 三个键不放, 然后打开电源,听到打印发出清脆的鸣叫后松手, 关上打印上盖, 此时[Ready]灯闪烁, [Station1] [Local] [Station2]三灯亮. 5. 按[Station1]键两次, 此时打印有吸纸的动作, [Station2]灯亮,放张A4的白纸。 6. 按[Station2]键一次, 打印能吸纸进入后退出,则光敏参数设置成功,此时将打印关闭后重开即可。 7. 如果设置失败,将发出持续的蜂鸣信号且控制面板上的四个灯以不同的顺序闪烁指示出错的光敏检测器。 READY STATION1 LOCAL STATION2 ON STATION1 LOCAL STATION2 X PHOTO1(长) X PHOTO2 X X PHOTO3 X PHOTO4 X X PHOTO1(短) X X PHOTO2 X X X 光敏管 常见故障判断及处理 l 故障现象一 : 打印在初始化过程中打印头(字车)撞墙 打印错位(应从最左边,最上面打起时,从中间开始打印) 故障原因及处理: 光敏管尘垢堆积, 需清洗或更换; 须清洁打印条及小平台(打印内),并将打印条涂黑; 打印左边的导杆移位,重新安装; 光敏管参数漂移, 需重新设定光敏管参数; 扁平电缆损坏,需更换。 l 故障现象二 : 打印初始化不能完成.; 不吸纸; 打印头在右边不回左界,且走纸电机不停转动; 打印时,将纸吸入后退出,不打印。 故障原因及处理: 光敏管参数漂移, 需重新设定光敏管参数. 长光纤或短光纤坏, 需更换; 光敏器坏,需更换; 进纸槽内有小纸片,清出后正常。 l 故障现象三 : 卡纸. 故障原因及处理: 压纸薄片卷曲或损坏, 需更换.; 打印上框支脚变形, 需调整; (调整标准: 后支脚为95°, 后支脚为90°) 打印内的薄片杠杆损坏,需更换。 l 故障现象四 : 不退纸或退纸时卡纸. 故障原因及处理: 压纸片脫落, 需补上 ;(应急处理, 将打印设置参数之 “ 出纸方向 ” 改为 “ 朝前 ” , 即可.) 压纸片损坏,需更换; 薄片杠杆损坏,需更换。 l 故障现象五 : 打印时, 字符漏点 (缺针). 故障原因及处理: 打印头之扁平电缆损坏, 需更换. 打印头线圈虚焊,需补焊; 打印头内部堵死(色带油墨),造成出针困难,需清洗打印头; 打印针损坏 ,需更换. 打印主板上3.15A/250V保险熔断, 需更换. 打印主板上TH3L10 或9024损坏, 需更换. l 故障现象六 : 打印打印后纸上无针痕。 故障原因及处理: 打印头升降未到位,手柄需向下压到位; 打印头滑轮磨损,需调整; 打印的主板上3.15A/250VX3保险熔断,需更换。 l 故障现象七 : 接通电源,打印不能进行初始化(即开机无动作)。 故障原因及处理:(电器故障) 打印之主板上1.6A/250V保险熔断,需更换; 打印之主板上3718芯片损坏,需更换; 打印之主板上L6202芯片损坏,需更换; 打印之主板上L6506D芯片损坏,需更换。 l 故障现象八 : 开机“ON”灯不亮(无电源)。 故障原因及处理 : 打印的电源部分1.6A/250V保险熔断,需更换; 打印的主板损坏,需更换; 打印电源部分的变压器线圈断,需更换; 打印电源部分的5A/250V保险熔断,需短接。 l 故障现象九 : 打印暂停。 故障原因及处理 : 打印的数据线坏,需更换; 主板损坏,需更换; 打印头老化,需更换。 l 故障现象十: 用手拨动打印头,打印头不能回左边。 故障原因及处理: 换向器移位,需重新装配。 l 故障现象十一: 打印时将纸打穿。 故障原因及处理: 压缩报表的压缩比例太大,改小为4/5或打印时将[STATION2]灯按灭,进行高速打印(OKI仿真); 打印时太接近纸张,需调整打印头上的滑轮。 l 故障现象十二: 打印拖痕或打印后纸张很黑 故障原因及处理: 打印头太脏,需清洗打印头。 l 故障现象十三: 打印模糊 故障原因及处理 打印头导针片脱落,需补上。 l 故障现象十四: 打印时,色带不转 故障原因及处理 中间齿轮损坏,需更换; 换向器齿轮损坏,需更换; 色带传动轴损坏,需更换 l 故障现象十五: 开机怪响 故障原因及处理 色带卡在前进纸轮上,需清理; 色带卡在走纸电机上,需清理。wc305503 (2008-6-05 16:39:17)HCC PR2高级存折打印维护手册 基本操作 l 打印自检 (每修复一台打印,须进行此操作) 1. 关闭电源. 2. 按住操作面板上的Station2键不放,再打开电源,直到打印初始化动作完成才松手. 3. 插入一张A4大小的纸到进纸器槽的中部,这时打印自动地将纸对齐并到正确的打印位置. 4. 然后循环打印出一张测试配置表. l 参数设置 1. 关闭电源. 2. 同时按住操作面板上的Station1和Station2键不放, 再打开电源, 直到打印初始化动作完成才松手. 3. 在进纸槽中插入一张A4规格的纸. 4. 打印开始吸纸, 并打印出两行提示信息. 5. 按Local键一次, 打印进入设置状态. 6. 若按Station1键, 认可并保存参数; 若按Station2键, 更改参数, 直到将需要更改或设置的参数设置完毕. 7. 参数更改完毕后, 按Local键一次, 再按Station1键一次, 听到打印发出两声清脆的鸣叫后, 关机. (此时更改好的参数已保存) l 监控程序的刷新 将打印与主机的 COM1口接好; 打开打印的上盖,按住[STATION1]和[LOCAL]键开机,盖上上盖; 在主机上运行FLASHPR2 VXXX.PR2; 打印将按8个模块下载,下载完后,将自检一次; 在重新设置前需先恢复出厂参数,再设置. l 打印与主机的接法: 主机 ( 9孔) 打印(25针) 2-----------------------------------------------------------2 3-----------------------------------------------------------3 5-----------------------------------------------------------7 注意:3.10以上的版本需先按[STATION2]键开机后,等动作停了再按[STATION1]键恢复出厂参数后再下载。 l 设定光敏管参数 PR2出厂时所有的光敏参数已经调整好,在使用中,由于使用非标准的纸张或要改变光敏参数,则必须重新调整光敏参数。 PR2共有四个光敏检测器: 纸张检测器 包括2组发光管和接受管,位于前进纸槽中,用于检测是否存在打印介质。发光管发出的光通过光纤传送。 前进纸检测器 与纸张检测器同属一组,包括四组发光管和接受管,发光管发出的光通过光纤传送。用于打印文件前调整纸张。 纸边检测器 安装于打印头上,用于检查打印纸的边界。 后进纸检测器 没有安装。 下图为光敏组件的示意图: 打印后端 光纤 ○ ○后进纸检测器 纸边检测器(位于打印头上) ○ 长光纤 长光纤 ○ ○ ○ ○ ○ ○ ○ ○1 3 2 4 短光纤 短光纤 1 2 纸张检测器 纸张检测器 打印前端 光敏参数设置步骤: 1. 关闭电源. 2. 打开打印上盖. 3. 将打印头移至打印最左边. 4. 同时按住[Station1] [Local] [Station2] 三个键不放, 然后打开电源,听到打印发出清脆的鸣叫后松手, 关上打印上盖, 此时[Ready]灯闪烁, [Station1] [Local] [Station2]三灯亮. 5. 按[Station1]键两次, 此时打印有吸纸的动作, [Station2]灯亮,放张A4的白纸。 6. 按[Station2]键一次, 打印能吸纸进入后退出,则光敏参数设置成功,此时将打印关闭后重开即可。 7. 如果设置失败,将发出持续的蜂鸣信号且控制面板上的四个灯以不同的顺序闪烁指示出错的光敏检测器。 READY STATION1 LOCAL STATION2 ON STATION1 LOCAL STATION2 X PHOTO1(长) X PHOTO2 X X PHOTO3 X PHOTO4 X X PHOTO1(短) X X PHOTO2 X X X 光敏管 常见故障判断及处理 l 故障现象一 : 打印在初始化过程中打印头(字车)撞墙 打印错位(应从最左边,最上面打起时,从中间开始打印) 故障原因及处理: 光敏管尘垢堆积, 需清洗或更换; 须清洁打印条及小平台(打印内),并将打印条涂黑; 打印左边的导杆移位,重新安装; 光敏管参数漂移, 需重新设定光敏管参数; 扁平电缆损坏,需更换。 l 故障现象二 : 打印初始化不能完成.; 不吸纸; 打印头在右边不回左界,且走纸电机不停转动; 打印时,将纸吸入后退出,不打印。 故障原因及处理: 光敏管参数漂移, 需重新设定光敏管参数. 长光纤或短光纤坏, 需更换; 光敏器坏,需更换; 进纸槽内有小纸片,清出后正常。 l 故障现象三 : 卡纸. 故障原因及处理: 压纸薄片卷曲或损坏, 需更换.; 打印上框支脚变形, 需调整; (调整标准: 后支脚为95°, 后支脚为90°) 打印内的薄片杠杆损坏,需更换。 l 故障现象四 : 不退纸或退纸时卡纸. 故障原因及处理: 压纸片脫落, 需补上 ;(应急处理, 将打印设置参数之 “ 出纸方向 ” 改为 “ 朝前 ” , 即可.) 压纸片损坏,需更换; 薄片杠杆损坏,需更换。 l 故障现象五 : 打印时, 字符漏点 (缺针). 故障原因及处理: 打印头之扁平电缆损坏, 需更换. 打印头线圈虚焊,需补焊; 打印头内部堵死(色带油墨),造成出针困难,需清洗打印头; 打印针损坏 ,需更换. 打印主板上3.15A/250V保险熔断, 需更换. 打印主板上TH3L10 或9024损坏, 需更换. l 故障现象六 : 打印打印后纸上无针痕。 故障原因及处理: 打印头升降未到位,手柄需向下压到位; 打印头滑轮磨损,需调整; 打印的主板上3.15A/250VX3保险熔断,需更换。 l 故障现象七 : 接通电源,打印不能进行初始化(即开机无动作)。 故障原因及处理:(电器故障) 打印之主板上1.6A/250V保险熔断,需更换; 打印之主板上3718芯片损坏,需更换; 打印之主板上L6202芯片损坏,需更换; 打印之主板上L6506D芯片损坏,需更换。 l 故障现象八 : 开机“ON”灯不亮(无电源)。 故障原因及处理 : 打印的电源部分1.6A/250V保险熔断,需更换; 打印的主板损坏,需更换; 打印电源部分的变压器线圈断,需更换; 打印电源部分的5A/250V保险熔断,需短接。 l 故障现象九 : 打印暂停。 故障原因及处理 : 打印的数据线坏,需更换; 主板损坏,需更换; 打印头老化,需更换。 l 故障现象十: 用手拨动打印头,打印头不能回左边。 故障原因及处理: 换向器移位,需重新装配。 l 故障现象十一: 打印时将纸打穿。 故障原因及处理: 压缩报表的压缩比例太大,改小为4/5或打印时将[STATION2]灯按灭,进行高速打印(OKI仿真); 打印时太接近纸张,需调整打印头上的滑轮。 l 故障现象十二: 打印拖痕或打印后纸张很黑 故障原因及处理: 打印头太脏,需清洗打印头。 l 故障现象十三: 打印模糊 故障原因及处理 打印头导针片脱落,需补上。 l 故障现象十四: 打印时,色带不转 故障原因及处理 中间齿轮损坏,需更换; 换向器齿轮损坏,需更换; 色带传动轴损坏,需更换 l 故障现象十五: 开机怪响 故障原因及处理 色带卡在前进纸轮上,需清理; 色带卡在走纸电机上,需清理。wc305503 (2008-6-05 16:45:44)HCC PR2高级存折打印维护手册 基本操作 l 打印自检 (每修复一台打印,须进行此操作) 1. 关闭电源. 2. 按住操作面板上的Station2键不放,再打开电源,直到打印初始化动作完成才松手. 3. 插入一张A4大小的纸到进纸器槽的中部,这时打印自动地将纸对齐并到正确的打印位置. 4. 然后循环打印出一张测试配置表. l 参数设置 1. 关闭电源. 2. 同时按住操作面板上的Station1和Station2键不放, 再打开电源, 直到打印初始化动作完成才松手. 3. 在进纸槽中插入一张A4规格的纸. 4. 打印开始吸纸, 并打印出两行提示信息. 5. 按Local键一次, 打印进入设置状态. 6. 若按Station1键, 认可并保存参数; 若按Station2键, 更改参数, 直到将需要更改或设置的参数设置完毕. 7. 参数更改完毕后, 按Local键一次, 再按Station1键一次, 听到打印发出两声清脆的鸣叫后, 关机. (此时更改好的参数已保存) l 监控程序的刷新 将打印与主机的 COM1口接好; 打开打印的上盖,按住[STATION1]和[LOCAL]键开机,盖上上盖; 在主机上运行FLASHPR2 VXXX.PR2; 打印将按8个模块下载,下载完后,将自检一次; 在重新设置前需先恢复出厂参数,再设置. l 打印与主机的接法: 主机 ( 9孔) 打印(25针) 2-----------------------------------------------------------2 3-----------------------------------------------------------3 5-----------------------------------------------------------7 注意:3.10以上的版本需先按[STATION2]键开机后,等动作停了再按[STATION1]键恢复出厂参数后再下载。 l 设定光敏管参数 PR2出厂时所有的光敏参数已经调整好,在使用中,由于使用非标准的纸张或要改变光敏参数,则必须重新调整光敏参数。 PR2共有四个光敏检测器: 纸张检测器 包括2组发光管和接受管,位于前进纸槽中,用于检测是否存在打印介质。发光管发出的光通过光纤传送。 前进纸检测器 与纸张检测器同属一组,包括四组发光管和接受管,发光管发出的光通过光纤传送。用于打印文件前调整纸张。 纸边检测器 安装于打印头上,用于检查打印纸的边界。 后进纸检测器 没有安装。 下图为光敏组件的示意图: 打印后端 光纤 ○ ○后进纸检测器 纸边检测器(位于打印头上) ○ 长光纤 长光纤 ○ ○ ○ ○ ○ ○ ○ ○1 3 2 4 短光纤 短光纤 1 2 纸张检测器 纸张检测器 打印前端 光敏参数设置步骤: 1. 关闭电源. 2. 打开打印上盖. 3. 将打印头移至打印最左边. 4. 同时按住[Station1] [Local] [Station2] 三个键不放, 然后打开电源,听到打印发出清脆的鸣叫后松手, 关上打印上盖, 此时[Ready]灯闪烁, [Station1] [Local] [Station2]三灯亮. 5. 按[Station1]键两次, 此时打印有吸纸的动作, [Station2]灯亮,放张A4的白纸。 6. 按[Station2]键一次, 打印能吸纸进入后退出,则光敏参数设置成功,此时将打印关闭后重开即可。 7. 如果设置失败,将发出持续的蜂鸣信号且控制面板上的四个灯以不同的顺序闪烁指示出错的光敏检测器。 READY STATION1 LOCAL STATION2 ON STATION1 LOCAL STATION2 X PHOTO1(长) X PHOTO2 X X PHOTO3 X PHOTO4 X X PHOTO1(短) X X PHOTO2 X X X 光敏管 常见故障判断及处理 l 故障现象一 : 打印在初始化过程中打印头(字车)撞墙 打印错位(应从最左边,最上面打起时,从中间开始打印) 故障原因及处理: 光敏管尘垢堆积, 需清洗或更换; 须清洁打印条及小平台(打印内),并将打印条涂黑; 打印左边的导杆移位,重新安装; 光敏管参数漂移, 需重新设定光敏管参数; 扁平电缆损坏,需更换。 l 故障现象二 : 打印初始化不能完成.; 不吸纸; 打印头在右边不回左界,且走纸电机不停转动; 打印时,将纸吸入后退出,不打印。 故障原因及处理: 光敏管参数漂移, 需重新设定光敏管参数. 长光纤或短光纤坏, 需更换; 光敏器坏,需更换; 进纸槽内有小纸片,清出后正常。 l 故障现象三 : 卡纸. 故障原因及处理: 压纸薄片卷曲或损坏, 需更换.; 打印上框支脚变形, 需调整; (调整标准: 后支脚为95°, 后支脚为90°) 打印内的薄片杠杆损坏,需更换。 l 故障现象四 : 不退纸或退纸时卡纸. 故障原因及处理: 压纸片脫落, 需补上 ;(应急处理, 将打印设置参数之 “ 出纸方向 ” 改为 “ 朝前 ” , 即可.) 压纸片损坏,需更换; 薄片杠杆损坏,需更换。 l 故障现象五 : 打印时, 字符漏点 (缺针). 故障原因及处理: 打印头之扁平电缆损坏, 需更换. 打印头线圈虚焊,需补焊; 打印头内部堵死(色带油墨),造成出针困难,需清洗打印头; 打印针损坏 ,需更换. 打印主板上3.15A/250V保险熔断, 需更换. 打印主板上TH3L10 或9024损坏, 需更换. l 故障现象六 : 打印打印后纸上无针痕。 故障原因及处理: 打印头升降未到位,手柄需向下压到位; 打印头滑轮磨损,需调整; 打印的主板上3.15A/250VX3保险熔断,需更换。 l 故障现象七 : 接通电源,打印不能进行初始化(即开机无动作)。 故障原因及处理:(电器故障) 打印之主板上1.6A/250V保险熔断,需更换; 打印之主板上3718芯片损坏,需更换; 打印之主板上L6202芯片损坏,需更换; 打印之主板上L6506D芯片损坏,需更换。 l 故障现象八 : 开机“ON”灯不亮(无电源)。 故障原因及处理 : 打印的电源部分1.6A/250V保险熔断,需更换; 打印的主板损坏,需更换; 打印电源部分的变压器线圈断,需更换; 打印电源部分的5A/250V保险熔断,需短接。 l 故障现象九 : 打印暂停。 故障原因及处理 : 打印的数据线坏,需更换; 主板损坏,需更换; 打印头老化,需更换。 l 故障现象十: 用手拨动打印头,打印头不能回左边。 故障原因及处理: 换向器移位,需重新装配。 l 故障现象十一: 打印时将纸打穿。 故障原因及处理: 压缩报表的压缩比例太大,改小为4/5或打印时将[STATION2]灯按灭,进行高速打印(OKI仿真); 打印时太接近纸张,需调整打印头上的滑轮。 l 故障现象十二: 打印拖痕或打印后纸张很黑 故障原因及处理: 打印头太脏,需清洗打印头。 l 故障现象十三: 打印模糊 故障原因及处理 打印头导针片脱落,需补上。 l 故障现象十四: 打印时,色带不转 故障原因及处理 中间齿轮损坏,需更换; 换向器齿轮损坏,需更换; 色带传动轴损坏,需更换 l 故障现象十五: 开机怪响 故障原因及处理 色带卡在前进纸轮上,需清理; 色带卡在走纸电机上,需清理。wc305503 (2008-6-05 16:48:03)HCC PR2高级存折打印维护手册 基本操作 l 打印自检 (每修复一台打印,须进行此操作) 1. 关闭电源. 2. 按住操作面板上的Station2键不放,再打开电源,直到打印初始化动作完成才松手. 3. 插入一张A4大小的纸到进纸器槽的中部,这时打印自动地将纸对齐并到正确的打印位置. 4. 然后循环打印出一张测试配置表. l 参数设置 1. 关闭电源. 2. 同时按住操作面板上的Station1和Station2键不放, 再打开电源, 直到打印初始化动作完成才松手. 3. 在进纸槽中插入一张A4规格的纸. 4. 打印开始吸纸, 并打印出两行提示信息. 5. 按Local键一次, 打印进入设置状态. 6. 若按Station1键, 认可并保存参数; 若按Station2键, 更改参数, 直到将需要更改或设置的参数设置完毕. 7. 参数更改完毕后, 按Local键一次, 再按Station1键一次, 听到打印发出两声清脆的鸣叫后, 关机. (此时更改好的参数已保存) l 监控程序的刷新 将打印与主机的 COM1口接好; 打开打印的上盖,按住[STATION1]和[LOCAL]键开机,盖上上盖; 在主机上运行FLASHPR2 VXXX.PR2; 打印将按8个模块下载,下载完后,将自检一次; 在重新设置前需先恢复出厂参数,再设置. l 打印与主机的接法: 主机 ( 9孔) 打印(25针) 2-----------------------------------------------------------2 3-----------------------------------------------------------3 5-----------------------------------------------------------7 注意:3.10以上的版本需先按[STATION2]键开机后,等动作停了再按[STATION1]键恢复出厂参数后再下载。 l 设定光敏管参数 PR2出厂时所有的光敏参数已经调整好,在使用中,由于使用非标准的纸张或要改变光敏参数,则必须重新调整光敏参数。 PR2共有四个光敏检测器: 纸张检测器 包括2组发光管和接受管,位于前进纸槽中,用于检测是否存在打印介质。发光管发出的光通过光纤传送。 前进纸检测器 与纸张检测器同属一组,包括四组发光管和接受管,发光管发出的光通过光纤传送。用于打印文件前调整纸张。 纸边检测器 安装于打印头上,用于检查打印纸的边界。 后进纸检测器 没有安装。 下图为光敏组件的示意图: 打印后端 光纤 ○ ○后进纸检测器 纸边检测器(位于打印头上) ○ 长光纤 长光纤 ○ ○ ○ ○ ○ ○ ○ ○1 3 2 4 短光纤 短光纤 1 2 纸张检测器 纸张检测器 打印前端 光敏参数设置步骤: 1. 关闭电源. 2. 打开打印上盖. 3. 将打印头移至打印最左边. 4. 同时按住[Station1] [Local] [Station2] 三个键不放, 然后打开电源,听到打印发出清脆的鸣叫后松手, 关上打印上盖, 此时[Ready]灯闪烁, [Station1] [Local] [Station2]三灯亮. 5. 按[Station1]键两次, 此时打印有吸纸的动作, [Station2]灯亮,放张A4的白纸。 6. 按[Station2]键一次, 打印能吸纸进入后退出,则光敏参数设置成功,此时将打印关闭后重开即可。 7. 如果设置失败,将发出持续的蜂鸣信号且控制面板上的四个灯以不同的顺序闪烁指示出错的光敏检测器。 READY STATION1 LOCAL STATION2 ON STATION1 LOCAL STATION2 X PHOTO1(长) X PHOTO2 X X PHOTO3 X PHOTO4 X X PHOTO1(短) X X PHOTO2 X X X 光敏管 常见故障判断及处理 l 故障现象一 : 打印在初始化过程中打印头(字车)撞墙 打印错位(应从最左边,最上面打起时,从中间开始打印) 故障原因及处理: 光敏管尘垢堆积, 需清洗或更换; 须清洁打印条及小平台(打印内),并将打印条涂黑; 打印左边的导杆移位,重新安装; 光敏管参数漂移, 需重新设定光敏管参数; 扁平电缆损坏,需更换。 l 故障现象二 : 打印初始化不能完成.; 不吸纸; 打印头在右边不回左界,且走纸电机不停转动; 打印时,将纸吸入后退出,不打印。 故障原因及处理: 光敏管参数漂移, 需重新设定光敏管参数. 长光纤或短光纤坏, 需更换; 光敏器坏,需更换; 进纸槽内有小纸片,清出后正常。 l 故障现象三 : 卡纸. 故障原因及处理: 压纸薄片卷曲或损坏, 需更换.; 打印上框支脚变形, 需调整; (调整标准: 后支脚为95°, 后支脚为90°) 打印内的薄片杠杆损坏,需更换。 l 故障现象四 : 不退纸或退纸时卡纸. 故障原因及处理: 压纸片脫落, 需补上 ;(应急处理, 将打印设置参数之 “ 出纸方向 ” 改为 “ 朝前 ” , 即可.) 压纸片损坏,需更换; 薄片杠杆损坏,需更换。 l 故障现象五 : 打印时, 字符漏点 (缺针). 故障原因及处理: 打印头之扁平电缆损坏, 需更换. 打印头线圈虚焊,需补焊; 打印头内部堵死(色带油墨),造成出针困难,需清洗打印头; 打印针损坏 ,需更换. 打印主板上3.15A/250V保险熔断, 需更换. 打印主板上TH3L10 或9024损坏, 需更换. l 故障现象六 : 打印打印后纸上无针痕。 故障原因及处理: 打印头升降未到位,手柄需向下压到位; 打印头滑轮磨损,需调整; 打印的主板上3.15A/250VX3保险熔断,需更换。 l 故障现象七 : 接通电源,打印不能进行初始化(即开机无动作)。 故障原因及处理:(电器故障) 打印之主板上1.6A/250V保险熔断,需更换; 打印之主板上3718芯片损坏,需更换; 打印之主板上L6202芯片损坏,需更换; 打印之主板上L6506D芯片损坏,需更换。 l 故障现象八 : 开机“ON”灯不亮(无电源)。 故障原因及处理 : 打印的电源部分1.6A/250V保险熔断,需更换; 打印的主板损坏,需更换; 打印电源部分的变压器线圈断,需更换; 打印电源部分的5A/250V保险熔断,需短接。 l 故障现象九 : 打印暂停。 故障原因及处理 : 打印的数据线坏,需更换; 主板损坏,需更换; 打印头老化,需更换。 l 故障现象十: 用手拨动打印头,打印头不能回左边。 故障原因及处理: 换向器移位,需重新装配。 l 故障现象十一: 打印时将纸打穿。 故障原因及处理: 压缩报表的压缩比例太大,改小为4/5或打印时将[STATION2]灯按灭,进行高速打印(OKI仿真); 打印时太接近纸张,需调整打印头上的滑轮。 l 故障现象十二: 打印拖痕或打印后纸张很黑 故障原因及处理: 打印头太脏,需清洗打印头。 l 故障现象十三: 打印模糊 故障原因及处理 打印头导针片脱落,需补上。 l 故障现象十四: 打印时,色带不转 故障原因及处理 中间齿轮损坏,需更换; 换向器齿轮损坏,需更换; 色带传动轴损坏,需更换 l 故障现象十五: 开机怪响 故障原因及处理 色带卡在前进纸轮上,需清理; 色带卡在走纸电机上,需清理。

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧