vb.net打印份数 vbs打印

vb.net怎么打印执行代码行数如何在VB.net中的应用程序运行打印行数
【vb.net打印份数 vbs打印】[英] how to print out line number during application run in VB.net
查看:341 发布时间:2015/11/25 16:05:39 .net vb.net debugging stack-trace line-numbers
万维广告联盟
?? 杜绝删库跑路 。一个平台登录所有资产,实现事先防范、事中控制、事后溯源,满足等保合规要求 。
广告
本文介绍了如何在VB.net中的应用程序运行打印行数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想打印出我的调试消息,在VB.net应用程序的行号 。我不喜欢这样,
Dim st As StackTrace
Dim sf As StackFramee
st = New StackTrace(New StackFrame(True))
sf = st.GetFrame(0)
Console.WriteLine.("Line "sf.GetFileLineNumber())
我想把片段的一类,每次我打电话logMsg方法来记录我的消息,行号源$ C $ C 。但我发现,如果我把上面的代码段为一类,行数总是相同的,这是我新的'圣' 。行
的功能是完全一样的具有_ 行的宏C ++ 。其实我是C ++程序员 。
反正来解决这个问题?谢谢 。
推荐答案
您已经证明是工作完全按预期的code 。它打印在您拍摄的堆栈帧行的数目 。因为你已经在不同的类中定义它,它打印包含类文件的行号 。
在的getFrame 方法,在这里是非常重要的 。栈帧起始编号是0,这是的最后的堆栈帧推 。因此 , 参考帧0,则指示打印的最后的堆栈被推帧的行数的运行时间 。当一个方法调用另一个,一个新的堆栈帧创建 。
相反,你需要改变你的方法在几个重要方面 。首先,你需要获得的第一个的框架被压入堆栈 。第二,你可能要接受有关您回应异常含参数的信息 。尝试重写你的调试方法看起来是这样的:
Public Sub PrintCurrentLine(ByVal ex As Exception)
Dim st As StackTrace = New StackTrace(ex)
Dim sf As StackFrame = st.GetFrame(st.FrameCount - 1)
Console.WriteLine("Line "sf.GetFileLineNumber())
End Sub
还要记住,如果你正在运行的code与优化启用,像行号可能已经改变 。你总是需要包括PDB文件与您的code , 它包含调试用于在这样的情况的信息 。它映射优化code回到原来的来源 。
这篇关于如何在VB.net中的应用程序运行打印行数的文章就介绍到这了 , 希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
vb 打印ExcelVBA设置excel自动打?。?
sub dayin()
Application.ActiveSheet.PrintOut copies:=1
end sub
这是打印当前的工作表 打印一份
如果是打印当前工作薄中的工作表
Excel.ActiveWorkBook.PrintOut(1,Excel.WorkSheets.count,1,.T.) 带参数的打印
参数说明:共四个参数
参数1-数值:当前工作簿中进行打印的起始工作表号(默认1)参数2-数值:当前工作簿中进行打印的结束工作表号(默认最末)
参数3-数值:打印份数(默认1)
参数4-逻辑值:是预览打印还是直接打?。?T.-预览打印,.F.-直接打印(默认.F.)
Excel.ActiveSheet.PrintOut()
参数说明:共八个参数
参数1-数值:起始页号 , 省略则默认为开始位置参数2-数值:终止页号,省略则默认为最后一页
参数3-数值:打印份数,省略则默认为1份
参数4-逻辑值:是否预览,省略则默认为直接打印(.F.)
参数5-字符值:设置活动打印机名称,省略则为默认打印机
参数6-逻辑值:是否输出到文件,省略则默认为否(.F.),若选.T.且参数8为空,则Excel提示输入要输出的文件名
参数7-逻辑值:输出类型,省略则默认为(.T.)逐份打?。裨蛑鹨炒蛴?

推荐阅读