<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<META content="IncrediMail 1.0" name=GENERATOR>
<!--IncrdiXMLRemarkStart>
<IncrdiX-Info>
<X-FID>CB5A11CC-B87B-40200B65F-A1197FF3408E</X-FID>
<X-FVER>4.0</X-FVER>
<X-FIT>Letter</X-FIT>
<X-FILE>Letter\style1.imf</X-FILE>
<X-FCOL>Aleksandar Cikota's Collection</X-FCOL>
<X-FCAT>Untitled</X-FCAT>
<X-FDIS>Style1</X-FDIS>
<X-Extensions>SU1CTDEsNDYsgUmBSTQwjSSFhTQ0TTDBnTBNiYGRgYEwmY04TSSFhcWdODiViYHBLEmBSYFJgSxJTUJMMiwwLCxJTUJMMywwLCw=</X-Extensions>
<X-BG></X-BG>
<X-BGT>no-repeat</X-BGT>
<X-BGC>#ffffff</X-BGC>
<X-BGPX>0px</X-BGPX>
<X-BGPY>0px</X-BGPY>
<X-ASN>BCEB29C0-42D3-11D4-BA3E-0050DAC68030</X-ASN>
<X-ASNF>0</X-ASNF>
<X-ASH>BCEB29C0-42D3-11D4-BA3E-0050DAC68030</X-ASH>
<X-ASHF>1</X-ASHF>
<X-AN>C958D3B0-2BF0-11D4-BA28-0050DAC68030</X-AN>
<X-ANF>0</X-ANF>
<X-AP>C958D3B0-2BF0-11D4-BA28-0050DAC68030</X-AP>
<X-APF>1</X-APF>
<X-AD>E3F15280-2BF7-11D4-BA28-0050DAC68030</X-AD>
<X-ADF>0</X-ADF>
<X-AUTO>X-ASN,X-ASH,X-AN,X-AP,X-AD</X-AUTO>
<X-CNT>;</X-CNT>
</IncrdiX-Info>
<IncrdiXMLRemarkEnd-->
</HEAD>
<BODY style="BACKGROUND-POSITION: 0px 0px; FONT-SIZE: 10pt; MARGIN: 0px 10px 10px; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: Verdana" bgProperties=fixed bgColor=#ffffff background="" scroll=yes SIGCOLOR="0" INCREDIFIXEDFORIMOL="true" ORGYPOS="0">
<TABLE id=INCREDIMAINTABLE cellSpacing=0 cellPadding=2 width="100%" border=0>
<TBODY>
<TR>
<TD id=INCREDITEXTREGION style="FONT-SIZE: 10pt; CURSOR: auto" vAlign=top width="100%">
<DIV>&nbsp;Hi all,<BR><BR>I'm beginner in Python and need help. I'm writing software for a robotic <BR>telescope. For CCD camera control we use MaxIm DL (Diffraction Limited). I <BR>have a problem with CCDCamera.SaveImage.<BR></DIV>
<DIV>&nbsp;</DIV>
<DIV>Here is the code (Python):<BR><BR>import win32com.client, time<BR>CCDCamera = win32com.client.Dispatch('MaxIm.CCDCamera')<BR>CCDCamera.LinkEnabled = True<BR>if CCDCamera.LinkEnabled == False:<BR>&nbsp;&nbsp;&nbsp;&nbsp; print 'Failed to start camera.'<BR>exp = int(raw_input('Exposition[sec]: '))<BR>CCDCamera.Expose(exp, 1, 0)<BR>while CCDCamera.ImageReady == False:<BR>&nbsp;&nbsp;&nbsp;&nbsp; time.sleep<BR>print 'Done'<BR>time.sleep(3)<BR>CCDCamera.SaveImage('C:/1.fit')<BR></DIV>
<DIV><BR>Error message:<BR>&gt;&nbsp;&nbsp;&nbsp; File "S:MaxImmaxim.py", line 19, in ?<BR>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; CCDCamera.SaveImage('C:/1.fit')<BR>&gt;&nbsp;&nbsp;&nbsp; File "C:ProgrammePython24Libsite-<BR>&gt; packageswin32comclientdynamic.py", line 491, in __getattr__<BR>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; raise pythoncom.com_error, details<BR>&gt; com_error: (-2147352567, 'Ausnahmefehler aufgetreten.',<BR>&gt; (65535, 'MaxIm DL 4', 'Invalid Input', None, 0, 0), None)<BR><BR><BR>Here is the answer that we recieved from Diffraction Limited:<BR>---------<BR>For CCDCamera.SaveImage, 'Invalid Input' is reported only if the argument is<BR>not of an acceptable type.&nbsp; As you are probably aware from looking at the<BR>type library, the filename argument is declared as a variant.&nbsp; What the type<BR>library doesn't tell you is that the variant must be either a BSTR (unicode<BR>string with header) or a reference to a BSTR.&nbsp; Specifically, the 'vt' member<BR>of the VARIANT must be either VT_BSTR or VT_BSTR|VT_BYREF.<BR><BR>Does python provide any way of influencing how arguments for COM methods are<BR>created?&nbsp; If so, you may be able to get this to work.&nbsp; It may be as simple<BR>as assigning the string to a variable name instead of passing it as a<BR>literal, or perhaps there's something equivalent to a C++ cast operator or a<BR>VB 'type' function (CInt, CStr, etc.).<BR><BR>This problem is likely to affect any MaxIm DL automation method that takes a<BR>string as an argument.<BR>---------<BR><BR><BR><BR>The question is, how to convert a String in a BSTR (unicodestring with <BR>header)?<BR><BR></DIV>
<DIV><BR>For your prompt reply, I say thank you in advance.<BR><BR><BR>Best regards,<BR>Aleksandar Cikota<BR><BR></DIV>
<DIV>&nbsp;</DIV>
<DIV><STRONG><FONT color=#004080></FONT></STRONG>&nbsp;</DIV>
<DIV><STRONG><FONT color=#004080></FONT></STRONG>&nbsp;</DIV>
<DIV><STRONG><FONT color=#004080>-----------------------------------------</FONT></STRONG></DIV>
<DIV><FONT face=Verdana color=#004080 size=2><STRONG>Aleksandar Cikota</STRONG></FONT></DIV>
<DIV><FONT face=Verdana size=2><STRONG><FONT color=#004080>MSN: <A href="mailto:Aleksandar_Cikota@hotmail.com">Aleksandar_Cikota@hotmail.com</A></FONT></STRONG></FONT></DIV>
<DIV><STRONG><FONT face=Verdana color=#004080 size=2>SkyPe: Aleksandar_Cikota</FONT></STRONG></DIV>
<DIV><FONT face=Verdana size=2><STRONG><FONT color=#004080>e-mail: <A href="mailto:alexci@gmx.net">alexci@gmx.net</A></FONT></STRONG></FONT></DIV>
<DIV><STRONG><FONT face=Verdana color=#004080 size=2>Web page:</FONT></STRONG> <A href="http://www.neznamadresu.com/astronomija"><FONT face=Verdana size=2>www.neznamadresu.com/astronomija</FONT></A></DIV></TD></TR>
<TR>
<TD id=INCREDIFOOTER width="100%">
<TABLE cellSpacing=0 cellPadding=0 width="100%">
<TBODY>
<TR>
<TD width="100%"></TD>
<TD id=INCREDISOUND vAlign=bottom align=middle></TD>
<TD id=INCREDIANIM vAlign=bottom align=middle></TD></TR></TBODY></TABLE></TD></TR></TBODY></TABLE></BODY></HTML>