谁能解释下原理

在下问了很多,但是还是不是很明白其中的原理。
一:票据打印机是怎么被程序控制的?
二:“WindowsAPI”又是怎样被调用的?
三:这个票据打印类是怎样被调用的?
四:能不能解释些这个类的各个模块的作用。

就不贴代码了,点连接吧。。。

C#是直接有提供控制打印机的类库的
能设置页边距,打印位置等,可能打印发票也是类拟方式来对准的,打印机是通过打印机的名字来确定的。

C# 可以调用Windows API 比如
Kernell,user32,GDI 之类的核心动态链接库
其中GDI 包含了打印函数

至于第四个,需要看逻辑,语法基础

请问你购买了票据打印机了吗?如果你买了,那么应该有驱动程序给你,驱动里有帮助文档,里面有详细的API调用,如果支持.NET,还有封装好的.NET类可以直接调用。至于你提供的链接我不看了,具体打印机驱动不一样的,不能照搬。

对操作系统来说票据打印机和普通打印机除了驱动程序并没有任何不同,就算是驱动程序也是大同小异...只有“人”才会认为它们不同...

对应用程序来说,也仅仅是尺寸和定位的不同...所以什么类不类的都不过是一些简单的封装,不可能有万能通用的,最终还是得靠报表定位...前几年写过一个汇丰银行收银终端收银程序(POS)

1.购买终端机 
2.供应商提供开发包(就是几个dll,c++写的)及开发文档 
3.c#封装几个api
4.调用/测试, 准备一张汇丰银行的卡,测试时每次刷一分钱.
如题,我在操作数据库的时候,我登陆自己开发的系统之后进行其他操作,都很正常,惟独在删除数据的时候就报以下错误:
“在 System.AccessViolationException 中第一次偶然出现的“System.Data.OracleClient.dll”用vs2008根的时候在即时窗口中出现的提示也是:System.AccessViolationException 中第一次偶然出现的“System.Data.OracleClient.dll”。
最后我跟的时候就在数据库连接打开的方法:Open()出了问题。一时搞不明白为什么,还请各位帮帮忙,出出主意。

补充一下,vs2008跟的时候在即时窗口中出现的提示:System.AccessViolationException 中第一次偶然出现的“System.Data.OracleClient.dll”。类型的异常
跟到数据库连接打开的方法:Open()出了问题,就说c#尝试读取或写入受保护的内存。这通常指示其他内存已损坏。
在Open()方法前,数据库连接是处于关闭状态的.
不好意思,全是c#代码,就是我们正常编写数据库操作的代码嘛,我做其他操作,查询、增加的时候都可以通过,只有删除才出这样的错误,让我很是郁闷。
终于发现问题所在了,using (TransactionScope tran = new TransactionScope()){}把删除操作放TransactionScope里头了,把这个事务注释掉就没问题。真搞不懂为什么会出现这样的错误,msdtc服务也已经启动了。/
我在页面添加了一个 reportview控件,并给它选择了报表和数据源,运行时显示 sa登录失败。我其他页面访问数据库都没有问题,不知道这个是什么原因,我定义的数据源用的数据库连接是 web.config文件中的配置,其他页面也都是用的这个,不知道为什么报表就会显示这个错误,有没有高手给解决一下。谢谢了
sa登录失败,你确认你的数据库连接字符串没问题吗?
如果真的没问题,你再看看你的数据库访问权限
如果有问题的话,我其他页面应该也会出问题啊
数据库访问权限,我远程登录,用sa是可以的
来源: nba直播
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值