This is a multi-part message in MIME format.
------ extPart_000_0318_01C344AB.6131DCE0
Content-Type: text/plain;
charset so-8859-1"
Content-Transfer-Encoding: 7bit
Hello all,
I am trying to use Win32OLE to control a windows printer driver that
will be used to capture the printer output from applications to create
TIFF files. Below is my long winded explanation of what I am trying to
do. Any ideas at all would be welcome.
Thanks,
Steve Tuckner
Using the nifty Simple OLE browser from the WIN32OLE web page, I was
able to learn that this driver has three "interfaces" to play with.
They are:
BiPrnDrv
Abort
AboutBox
EndDoc
--------------------------- (what EndDoc output looks like)
Class BiPrnDrv
GUID : {E5B71FF3-4946-4DCC-863E-F16B8F864A66}
PROGID : BIPRNDRV.BiPrnDrvCtrl.1
DESCRIPTION : Black Ice Message Capture Control
Event FUNC VOID EndDoc
Dispatch ID : 3
DESCRIPTION :
arg1 - BSTR GroupFileName []
Event Interface : _DBiPrnDrvEvents
-----------------------------
InitCapture
StarDoc
StartPage
_DBiPrnDrv
AboutBox
GetIDsOfNames
GetTypeInfo
GetTypeInfoCount
InitCapture
Invoke
PrinterName
----------------------------- (What PrinterName entry looks like)
Dispatch _DBiPrnDrv
GUID : {8FE2BEA5-0F7F-4758-B6A4-68F86C74AA2D}
PROGID :
DESCRIPTION : Dispatch interface for BiPrnDrv Control
DISPATCH BSTR PrinterName
-----------------------------
UseCopyData
_DBiPrnDrvEvents
Abort
EndDoc
----------------------------- (What EndDoc looks like)
Dispatch _DBiPrnDrvEvents
GUID : {68E14ECB-14D9-4C9D-9470-C05348FED4CC}
PROGID :
DESCRIPTION : Event interface for BiPrnDrv Control
FUNC VOID EndDoc
Dispatch ID : 3
DESCRIPTION :
arg1 - BSTR GroupFileName []
-----------------------------
EndPage
GetIDsOfNames
GetTypeInfo
GetTypeInfoCount
Invoke
StartDoc
StartPage
Below is my code to try and get the printing events to be noticed by me.
They have very little doc (the vendor I got it from on the interface,
but do have sample code in VB and Delphi. Even so I have not be able to
get it to work. I can get the AboutBox to come up so that much works.
Below is my Ruby code and below that is the example VB code. I don't
know much about OLE but I have done some scripting of Outlook. I am
completely new to OLE events. Any ideas at all would be welcome on where
I should go from here (aside from talking to the vendor I acquired this
driver from who has probably never heard of Ruby before). I also tried
setting the printer name but that seemed to have no effect. I don't
understand the difference between the first two interfaces or how it was
even possible to set the PrinterName against the first interface when it
is part of the second.
-----------------------------------------------------------------------
(My ruby code)
require "win32ole"
printer IN32OLE.new("BIPRNDRV.BiPrnDrvCtrl.1")
ev IN32OLE_EVENT.new(printer, "_DBiPrnDrvEvents")
ev.on_event {|*args| print "default handler\n"}
ev.on_event("StartDoc") { print "in start doc\n"}
ev.on_event("StartPage") {|page_num| print "printing page
#{page_num}\n"}
ev.on_event("EndDoc") { print "in end doc\n"}
ev.on_event("EndPage") { print "in end page\n"}
while true
WIN32OLE_EVENT.message_loop
end
-----------------------------------------------------------------------
(VB sample code)
VERSION 5.00
Object {6ADA10EC-D372-4FE7-863C-BA84E3B89F76}#1.0#0"; "BIPRNDRV.OCX"
Object {F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Begin VB.Form Form1
BorderStyle 3 'Fixed Dialog
Caption "Message capture sample"
ClientHeight 3195
ClientLeft 45
ClientTop 330
ClientWidth 4680
Icon "BiCapture.frx":0000
LinkTopic "Form1"
MaxButton 0 'False
MinButton 0 'False
ScaleHeight 3195
ScaleWidth 4680
ShowInTaskbar 0 'False
StartUpPosition 3 'Windows Default
Begin VB.CommandButton Exit
Cancel -1 'True
Caption "E&xit"
Height 375
Left 1320
TabIndex 5
Top 2640
Width 1815
End
Begin VB.ListBox List1
Height 1425
ItemData "BiCapture.frx":030A
Left 120
List "BiCapture.frx":030C
TabIndex 4
Top 960
Width 4455
End
Begin MSComDlg.CommonDialog CommonDialog1
Left 120
Top 2640
_ExtentX 847
_ExtentY 847
_Version 393216
End
Begin VB.Frame Frame1
Caption "Current Printer"
Height 735
Left 120
TabIndex 1
Top 120
Width 4455
Begin VB.CommandButton ChangePrinter
Caption "Change Printer"
Height 375
Left 3000
TabIndex 2
Top 240
Width 1215
End
Begin VB.Label CurrentPrinter
Height 255
Left 240
TabIndex 3
Top 360
Width 2535
End
End
Begin BIPRNDRVLib.BiPrnDrv BiPrnDrv1
Height 615
Left 3960
TabIndex 0
Top 2520
Width 615
_Version 65536
_ExtentX 1085
_ExtentY 1085
_StockProps 0
End
End
Attribute VB_Name Form1"
Attribute VB_GlobalNameSpace alse
Attribute VB_Creatable alse
Attribute VB_PredeclaredId rue
Attribute VB_Exposed alse
Private Sub BiPrnDrv1_EndDoc(ByVal GroupFileName As String)
List1.AddItem "EndDoc message was received."
List1.AddItem "The Group File is: " & GroupFileName
List1.TopIndex ist1.ListCount - 1
End Sub
Private Sub BiPrnDrv1_EndPage(ByVal ImageFileName As String)
List1.AddItem "EndPage message was received."
List1.AddItem "The Image File is:" & ImageFileName
List1.TopIndex ist1.ListCount - 1
End Sub
Private Sub BiPrnDrv1_StarDoc(ByVal GroupFileName As String)
List1.AddItem "StartDoc message was received."
List1.AddItem "The Group File is: " & GroupFileName
List1.TopIndex ist1.ListCount - 1
End Sub
Private Sub BiPrnDrv1_StartPage(ByVal PageNumber As Long)
List1.AddItem "StartPage message was received."
List1.AddItem "The current page number is: " & Str(PageNumber)
List1.TopIndex ist1.ListCount - 1
End Sub
Private Sub ChangePrinter_Click()
CommonDialog1.ShowPrinter
BiPrnDrv1.PrinterName rinter.DeviceName
CurrentPrinter.Caption rinter.DeviceName
List1.AddItem "Please print with the " & BiPrnDrv1.PrinterName & "
printer."
End Sub
Private Sub Exit_Click()
Unload Form1
End Sub
Private Sub Form_Load()
BiPrnDrv1.PrinterName Black Ice Color"
CurrentPrinter.Caption Black Ice Color"
List1.AddItem "Please print with the " & BiPrnDrv1.PrinterName & "
printer."
End Sub
------ extPart_000_0318_01C344AB.6131DCE0
Content-Type: text/html;
charset so-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="MSHTML 6.00.2600.0" name=GENERATOR></HEAD>
<BODY>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Hello ll,</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>I am trying to use
Win32OLE to control a windows printer driver that will be used to capture the
printer output from applications to create TIFF files. Below is my long winded
explanation of what I am trying to do. Any ideas at all would be
welcome.</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>Thanks,</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Steve uckner</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Using the nifty
Simple OLE browser from the WIN32OLE web page, I was able to learn that this
driver has three "interfaces" to play with.</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>They
are:</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>BiPrnDrv</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
Abort</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
AboutBox</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
EndDoc</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>--------------------------- (what EndDoc output looks
like)</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Class
BiPrnDrv<BR> GUID : {E5B71FF3-4946-4DCC-863E-F16B8F864A66}<BR>
PROGID : BIPRNDRV.BiPrnDrvCtrl.1<BR> DESCRIPTION : Black Ice Message
Capture Control</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Event FUNC VOID
EndDoc<BR> Dispatch ID : 3<BR> DESCRIPTION : <BR> arg1 - BSTR
GroupFileName []</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2> Event
Interface :
_DBiPrnDrvEvents<BR>-----------------------------</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
InitCapture</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
StarDoc</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2> StartPage</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>_DBiPrnDrv</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
AboutBox</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2> GetIDsOfNames</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
GetTypeInfo</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
GetTypeInfoCount</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
InitCapture</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
Invoke</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
PrinterName</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>----------------------------- (What PrinterName entry looks
like)</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Dispatch
_DBiPrnDrv<BR> GUID : {8FE2BEA5-0F7F-4758-B6A4-68F86C74AA2D}<BR>
PROGID : <BR> DESCRIPTION : Dispatch interface for BiPrnDrv
Control</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV><SPAN class=098260022-07072003>
<DIV><FONT face=Arial size=2></FONT><FONT face=Arial size=2></FONT><BR><FONT
face=Arial size=2> DISPATCH BSTR PrinterName</FONT></DIV>
<DIV></SPAN><SPAN class=098260022-07072003><FONT face=Arial
size=2>-----------------------------</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
UseCopyData</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>_DBiPrnDrvEvents</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
Abort</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
EndDoc</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>----------------------------- (What EndDoc looks
like)</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Dispatch
_DBiPrnDrvEvents<BR> GUID :
{68E14ECB-14D9-4C9D-9470-C05348FED4CC}<BR> PROGID : <BR> DESCRIPTION
: Event interface for BiPrnDrv Control</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>FUNC VOID
EndDoc<BR> Dispatch ID : 3<BR> DESCRIPTION : <BR> arg1 - BSTR
GroupFileName []<BR></FONT></SPAN><SPAN class=098260022-07072003><FONT
face=Arial size=2>-----------------------------</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
EndPage</FONT></SPAN></DIV><SPAN class=098260022-07072003>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2> GetIDsOfNames</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
GetTypeInfo</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
GetTypeInfoCount</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2> Invoke</FONT></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
StartDoc</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>
StartPage</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Below is my code to
try and get the printing events to be noticed by me. They have very little
doc (the vendor I got it from on the interface, but do have sample code in VB
and Delphi. Even so I have not be able to get it to work. I can get the AboutBox
to come up so that much works. Below is my Ruby code and below that is the
example VB code. I don't know much about OLE but I have done some scripting of
Outlook. I am completely new to OLE events. Any ideas at all would be welcome on
where I should go from here (aside from talking to the vendor I acquired this
driver from who has probably never heard of Ruby before). I also tried setting
the printer name but that seemed to have no effect. I don't understand the
difference between the first two interfaces or how it was even possible to set
the PrinterName against the first interface when it is part of the
second.</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>-----------------------------------------------------------------------
(My ruby code)</FONT></SPAN></DIV></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>require
"win32ole"</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>printer =
WIN32OLE.new("BIPRNDRV.BiPrnDrvCtrl.1")<BR></FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>ev =
WIN32OLE_EVENT.new(printer, "_DBiPrnDrvEvents")<BR>ev.on_event {|*args| print
"default handler\n"}<BR>ev.on_event("StartDoc") { print "in start
doc\n"}<BR>ev.on_event("StartPage") {|page_num| print "printing page
#{page_num}\n"}<BR>ev.on_event("EndDoc") { print "in end
doc\n"}<BR>ev.on_event("EndPage") { print "in end page\n"}</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>while true<BR>
WIN32OLE_EVENT.message_loop <BR>end<BR></FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2>-----------------------------------------------------------------------
(VB sample code)</FONT></SPAN></DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>VERSION
5.00<BR>Object = "{6ADA10EC-D372-4FE7-863C-BA84E3B89F76}#1.0#0";
"BIPRNDRV.OCX"<BR>Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0";
"COMDLG32.OCX"<BR>Begin VB.Form Form1 <BR>
BorderStyle = 3 'Fixed
Dialog<BR> Caption
= "Message capture sample"<BR>
ClientHeight = 3195<BR>
ClientLeft = 45<BR>
ClientTop = 330<BR>
ClientWidth = 4680<BR>
Icon
= "BiCapture.frx":0000<BR>
LinkTopic =
"Form1"<BR> MaxButton
= 0 'False<BR>
MinButton = 0
'False<BR> ScaleHeight =
3195<BR> ScaleWidth =
4680<BR> ShowInTaskbar = 0
'False<BR> StartUpPosition = 3 'Windows efault<BR> Begin VB.CommandButton Exit
<BR>
Cancel =
-1 'True<BR>
Caption = E&xit"<BR>
Height =
375<BR>
Left
= 1320<BR>
TabIndex =
5<BR>
Top
= 2640<BR>
Width =
1815<BR> End<BR> Begin VB.ListBox List1
<BR>
Height =
1425<BR>
ItemData =
"BiCapture.frx":030A<BR>
Left
= 120<BR>
List
= "BiCapture.frx":030C<BR>
TabIndex =
4<BR>
Top
= 960<BR>
Width =
4455<BR> End<BR> Begin MSComDlg.CommonDialog
CommonDialog1 <BR>
Left
= 120<BR>
Top
= 2640<BR>
_ExtentX =
847<BR>
_ExtentY =
847<BR>
_Version =
393216<BR> End<BR> Begin VB.Frame Frame1
<BR>
Caption = "Current
Printer"<BR>
Height =
735<BR>
Left
= 120<BR>
TabIndex =
1<BR>
Top
= 120<BR>
Width =
4455<BR> Begin VB.CommandButton ChangePrinter
<BR>
Caption = "Change
Printer"<BR>
Height =
375<BR>
Left
= 3000<BR>
TabIndex =
2<BR>
Top
= 240<BR> idth =
1215<BR> End<BR>
Begin VB.Label CurrentPrinter
<BR>
Height =
255<BR>
Left
= 240<BR> abIndex =
3<BR>
Top
= 360<BR> idth =
2535<BR> End<BR> End<BR>
Begin BIPRNDRVLib.BiPrnDrv BiPrnDrv1 <BR> eight =
615<BR>
Left
= 3960<BR>
TabIndex =
0<BR>
Top
= 2520<BR>
Width =
615<BR>
_Version =
65536<BR>
_ExtentX =
1085<BR>
_ExtentY =
1085<BR> _StockProps
= 0<BR> End<BR>End<BR>Attribute VB_Name =
"Form1"<BR>Attribute VB_GlobalNameSpace = False<BR>Attribute VB_Creatable =
False<BR>Attribute VB_PredeclaredId = True<BR>Attribute VB_Exposed =
False</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Private Sub
BiPrnDrv1_EndDoc(ByVal GroupFileName As String)<BR>List1.AddItem "EndDoc message
was received."<BR>List1.AddItem "The Group File is: " &
GroupFileName<BR>List1.TopIndex = List1.ListCount - 1<BR>End
Sub</FONT></SPAN></DIV>
<DIV> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Private Sub
BiPrnDrv1_EndPage(ByVal ImageFileName As String)<BR>List1.AddItem "EndPage
message was received."<BR>List1.AddItem "The Image File is:" &
ImageFileName<BR>List1.TopIndex = List1.ListCount - 1<BR>End
Sub</FONT></SPAN></DIV>
<DIV> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Private Sub
BiPrnDrv1_StarDoc(ByVal GroupFileName As String)<BR>List1.AddItem "StartDoc
message was received."<BR>List1.AddItem "The Group File is: " &
GroupFileName<BR>List1.TopIndex = List1.ListCount - 1<BR>End
Sub</FONT></SPAN></DIV>
<DIV> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Private Sub
BiPrnDrv1_StartPage(ByVal PageNumber As Long)<BR>List1.AddItem "StartPage
message was received."<BR>List1.AddItem "The current page number is: " &
Str(PageNumber)<BR>List1.TopIndex = List1.ListCount - 1<BR>End
Sub</FONT></SPAN></DIV>
<DIV> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Private Sub
ChangePrinter_Click()<BR>CommonDialog1.ShowPrinter<BR>BiPrnDrv1.PrinterName =
Printer.DeviceName<BR>CurrentPrinter.Caption =
Printer.DeviceName<BR>List1.AddItem "Please print with the " &
BiPrnDrv1.PrinterName & " printer."<BR>End Sub</FONT></SPAN></DIV>
<DIV> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Private Sub
Exit_Click()<BR>Unload Form1<BR>End Sub</FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial size=2>Private Sub
Form_Load()<BR>BiPrnDrv1.PrinterName = "Black Ice
Color"<BR>CurrentPrinter.Caption = "Black Ice Color"<BR>List1.AddItem "Please
print with the " & BiPrnDrv1.PrinterName & " printer."<BR>End
Sub</FONT></SPAN></DIV>
<DIV> </DIV>
<DIV><SPAN class=098260022-07072003><FONT face=Arial
size=2> </DIV></FONT></SPAN></SPAN></BODY></HTML>
------ extPart_000_0318_01C344AB.6131DCE0--