关于Win2k环境下打印机自定义纸张的问题大讨论,如何找到纸张的 Handle!!!!Handle!!!!

Corny 2002-12-06 03:30:27
本人用VB语言,在Win98下时,用Printer就能够正常使用打印机设置,没有任何问题。现在是环境到了Win2k下,我已经试过了许多方法,包括API的SetPrinter函数,通常情况下都是可以的,但一遇到自定义纸张就有了大麻烦。

首先,我们知道Win下一直是用一int值(VB为long)来表示 handle,无论是窗体还是其他任何设备或值,都是一个int,问题是我们该怎么找到自定义纸张(或是系统预定义纸张)的 Handle。

我从原来简单使用Printer对象设置已经改到了用SetPrinter(包括MS网站的一个例子DocumentProperties)函数进行机器打印机的选择,但怎样才能选择我们该用的纸张。MS网站上有一个用DocumentProperties对当前纸型属性进行更改的例子,但那不是我们所能够使用的,因为那样只能在设置打印纸后即时用API进行打印,它并不能真实地反应到系统打印机Printer对象上,也就是说,我认为它只是改变了虚拟打印设备的参数(尺寸),而没有对真实的打印机进行修改,也改变不了真实的打印参数。在API中有一个Enums可以返回系统中所有打印纸的列表,其中的Flags表示纸型定义的来源,有一个状态值表示用户自定义纸张,但这个状态值对我们来说没有任何价值,比如如果我们在Win2k下预定义了两种打印纸,那我们基本上无法区别这两种纸是分别是哪种,关键是我们如何知道用户选择了哪种纸,并能将它作为缺省纸张保留下来,而不是把他们选择的纸张改为我们需要的参数。为了方便用户,我甚至需要在用户下次使用这个功能时自动选择该纸张,那我们应该如何去找到这个纸张的 Handle!Handle!~Handle!
...全文
57 22 打赏 收藏 转发到动态 举报
写回复
用AI写文章
22 条回复
切换为时间正序
请发表友善的回复…
发表回复
kfx 2003-04-25
  • 打赏
  • 举报
回复
我以找到手工添加自定义大小的纸张的途径了,可是怎么将自定义大小的纸张设为当前默认的打印格式呢?
kfx 2003-04-25
  • 打赏
  • 举报
回复
to zhou_chunlin() :Win2K可以手工设置自定义大小吗,我找了半天都没找到,请指点一下迷津,谢谢!
kfx 2003-04-25
  • 打赏
  • 举报
回复
我也为这事烦了2、3天了,我已经把MS技术支持网站上的那个例子研究透了(http://support.microsoft.com/default.aspx?scid=http://support.microsoft.com:80/support/kb/articles/q180/6/45.asp&NoWebContent=1),TNND,确实没有,增加和删除自定义纸张都可以,就是没发设为默认的,郁闷ing......
hansong_ll 2003-04-21
  • 打赏
  • 举报
回复
同样问题,关注....

在2K中,用MS的方法使用了自定义纸张(A4一半),好象没有什么反映,打印完还是走A4一整张纸,不知是什么原因?
wdwd05 2003-04-21
  • 打赏
  • 举报
回复
同样关注中~~~
Linder 2003-01-30
  • 打赏
  • 举报
回复
为这事,我也在发愁呀!不过不能自动,可以手动改变只是麻烦一点而已!
Corny 2003-01-30
  • 打赏
  • 举报
回复
那不叫麻烦一点,对用户来说,他们都不知道如何弄
Corny 2003-01-29
  • 打赏
  • 举报
回复
nnd,ms技术支持在这上面冒头,真遇着问题连他们都不理了
huangyj 2002-12-25
  • 打赏
  • 举报
回复
直接用 Windows API打开打印机不久可以得到 hHandle??
另外利用API设置纸张大小好像没有作用
wgf001 2002-12-22
  • 打赏
  • 举报
回复
谁说没有人关心?
只是我也搞不掂。
Corny 2002-12-22
  • 打赏
  • 举报
回复
我们先不讨论打印机本身支持或不支持,因为那些都是可以找到的

现在的问题是应该怎么找出那个该死的handle,并用上它

好象没人关心这个问题嘛
Corny 2002-12-16
  • 打赏
  • 举报
回复
看来这上面真是菜鸟多了,搞得我自己也跟个菜鸟一样
coo 2002-12-16
  • 打赏
  • 举报
回复
我以前用水晶报表作了几个表,那里不用vb去控制打印机,就是自定义纸张需要手工进行,我还没有能去用程序控制,虽然我很想那样做,否则打包的时候真不知要做多少事情.
另外,有些打印机是不完全支持自定义尺寸的(有些尺寸是受限制的)
呵呵,我也是菜鸟
gz
Corny 2002-12-15
  • 打赏
  • 举报
回复
还有没有谁提供更多的思路呀
beckham88 2002-12-15
  • 打赏
  • 举报
回复
怎么对这个问题关注的人很少呢?多有研究价值啊!!
scsun 2002-12-12
  • 打赏
  • 举报
回复
用其他报表控件,我也搞过,改不了。
wszzyn_2001 2002-12-09
  • 打赏
  • 举报
回复
oswica 的方法不行,我刚刚试过
oswica 2002-12-08
  • 打赏
  • 举报
回复
你有试过在98下编译,2K运行
beckham88 2002-12-08
  • 打赏
  • 举报
回复
是吗?可我怎么也找不到?谢谢指点!
Corny 2002-12-07
  • 打赏
  • 举报
回复
Win2k的自定义纸张在MSdn里有相关介绍,我在这里不再多说,请到msdn查看相关资料,我提供一点线索就是Win2k里不仅可以设置自定义纸张,而且比win9x更方便的是,我们可以把需要的自定义纸张全部定义进去,而不用象win9x一样在需要时再去修改,因为它可以定义许多种自定义纸张
加载更多回复(2)
课程亮点: 从无到有、手把手教你编写CA/TA,快速上手,快速部署项目标准的开发,开发一套CA/TA,可部署到不同的TEE OS上。受益人群: 汽车行业主机厂、tier1、SOC芯片公司的安全部门同事手机行业,ODM/OEM、SOC芯片公司的安全部门同事学生课程收益: 熟悉CA/TA开发的步骤和流程。快速上手,快速搭建自己开发环境。熟悉各类TEE、基于各类TEE的CA/TA开发步骤。搭建自己的安全平台熟悉各类常规安全应用熟悉tee密码学算法、tee存储  课程大纲  Hello大家好,上架一门新的视频课程,课程主要包含两大部分,第一部分搭建环境,第二部分从无到有的编写代码。带领大家手把手编写。 具体大纲如下:(1)qemu v8环境搭建- 搭建一个qemu_v8的环境,用于跑BL1-->BL2-->BL31-->BL32-->BL33-->Linux kernel;- 直接使用已搭建好的镜像- 工程使用以及说明(2)CA/TA开发编程实践从无到有编写代码,已完成的大纲如下:- 2秒钟快速编写(clone)一组CA/TA程序- 安全存储详解以及代码示例- CA到TA双向传参数的四种方式(value、temref、memref),区别?优缺点?- 对称密码学算法aes的使用,CBC/ECB/CTR/XTS分组密码的使用,加密解密,pending等- aeskey的操作,如何随机生成aeskey(TEE_GenerateKey),objectHandle和aesbuf有什么区别? 如何将handle- 认证加密算法,如aes-GCM的使用- 非对称密码学算法RSA的使用,包括加密、解密、签名、验签- RSA key的处理,包含如何生成RSA KEY,rsakey object如何转换成可见的数组,如何转换der,如何转换pem,反向又如何转换- ECC/ECDSA的使用- 国密sm2 sm3 sm4的使用.  其中sm4包含加密、解密、签名、验签等- encode和decode的实现- TA属性的定制以及API的使用- 数字摘要  SHA1 sha224 sha256 sha384 sha512等- 消息认证码 HMAC- TEE侧获取时间的函数有哪些(TEE_GetSystemTime、TEE_GetREETime),有什么区别?分别是怎样使用的? - 如何获取随机数(TEE_GenerateRandom)?- TA调用TA的示例和演示后续可能继续补充的如下(也欢迎大家提需求):- multi-session和multi-instance的使用- CA LOGIN flag的使用 

809

社区成员

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

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