真是见鬼了,
我用的SETFORM的API函数,原代码如下:
Dim FI1 As sFORM_INFO_1
Dim aFI1() As Byte
Dim RetVal As Long
Dim i As Long
With FI1
.Flags = 0
.pName = FormName
With .Size
.cx = FormSize.cx
.cy = FormSize.cy
End With
With .ImageableArea
.left = 0
.top = 0
.Right = FI1.Size.cx
.Bottom = FI1.Size.cy
End With
End With
ReDim aFI1(Len(FI1))
Call CopyMemory(aFI1(0), FI1, Len(FI1))
'RetVal = AddForm(PrinterHandle, 1, aFI1(0)) '增加一个新的打印格式
RetVal = SetForm(PrinterHandle, FormName, 1, aFI1(0)) '修改一个打印格式
Debug.Print Err.LastDllError最奇怪的是原代码运行一切正常,一旦编译后就不能修改表单(打印格式)了
那位高手知道是这么回事
我用的SETFORM的API函数,原代码如下:
Dim FI1 As sFORM_INFO_1
Dim aFI1() As Byte
Dim RetVal As Long
Dim i As Long
With FI1
.Flags = 0
.pName = FormName
With .Size
.cx = FormSize.cx
.cy = FormSize.cy
End With
With .ImageableArea
.left = 0
.top = 0
.Right = FI1.Size.cx
.Bottom = FI1.Size.cy
End With
End With
ReDim aFI1(Len(FI1))
Call CopyMemory(aFI1(0), FI1, Len(FI1))
'RetVal = AddForm(PrinterHandle, 1, aFI1(0)) '增加一个新的打印格式
RetVal = SetForm(PrinterHandle, FormName, 1, aFI1(0)) '修改一个打印格式
Debug.Print Err.LastDllError最奇怪的是原代码运行一切正常,一旦编译后就不能修改表单(打印格式)了
那位高手知道是这么回事
知道PRINTER 的句饼(通过openprinter函数),
知道页面格式的名称,如:“XS”
如何返回Printer.PaperSize序号那
但我不明白的是为什么原代码能够成功运行,而编译后就不能成功(主要是setform这个函数)
想想VC的debug与release的区别
刚才去VC版转了转,想到了这事。