Autoit打印问题
搜索了论坛,打印问题好像不多主要解决的是:打开关闭打印服务、查看打印机列表、删除打印列表等
对实际的打印控制,并没有提到
到英文官方网,我也简单的看了下(E文不好,不爽)
好像都是提到打印一个文件,如:打印一个TXT文件、打印一个图像文件
如果要把设置的一个窗体上的内容打印机来,必须要生成一个文件才能打印吗?那这个文件应该是个临时文件喽?
其他软件打印的原理也是这样的吗?也要生成一个临时文件?
[ 本帖最后由 zeebit 于 2008-9-8 13:38 编辑 ] 以下是网上搜索到的,第二段代码经测试不成功,第一段代码找不到那个函数
_OpenFilePrint("C:\test.gif")
Func _OpenFilePrint ($sFilePath)
Local $oShellApp = ObjCreate('shell.application')
Local $sPath = StringRegExpReplace($sFilePath, "\\[^\\]+$", "")
If @extended =0 Then $sPath = @WorkingDir
Local $oPath = $oShellApp.Namespace ($sPath), $oItem
For $oItem In $oPath.items
If $oItem.Path = $sFilePath Then
ConsoleWrite($oItem.Path &@CRLF)
$oItem.InvokeVerb('&Print')
EndIf
Next
EndFunc ; => _OpenFilePrint.
$sPrintFile = "c:\image.png"
Run('Rundll32.exe "' & @SystemDir & '\mshtml.dll",PrintHTML "' & $sPrintFile & '"', @SystemDir)
[ 本帖最后由 zeebit 于 2008-9-7 20:02 编辑 ] 经过测试_FilePrint函数不仅可以打印文本,还可以打印Word和Html文件
不过在打印的时候,都会打开Word软件窗口,再自动关闭
这样好像不太爽啊,而且不能设置边距等
虽然_FilePrint的说明里是这样写的:
Function Reference
_FilePrint
--------------------------------------------------------------------------------
Prints a plain text file.
#Include <File.au3>
_FilePrint($s_File[, $i_Show = @SW_HIDE])
[ 本帖最后由 zeebit 于 2008-9-7 19:58 编辑 ] 原來有打印的 我還以為沒有呢
页:
[1]