[python-win32] Python COM and Photoshop

Sam The Cat sam_spam_cat at verizon.net
Tue May 8 03:53:23 CEST 2007


One more thought -- I have tried both Early and Late binding COM calls and I 
get the same error message either way.



>I thought I'd try this again -- still no progress on my debugging.  From 
>using Visual Basic it seems that the interface is expecting an array of 
>type varint where each element of the array is another array.  The inner 
>arrays are two elements long (an x and y data point)
>
> I have also tried using the array module but I still get the same 
> errors --  basically anything that I try in Python results in a error 
> indicating that only a 1-dimensional arrays are supported -- which seems 
> weird since the vbasic code is not making a single dimensional array.
>
> Any thoughts are appreciated
>
>
>
>> Help !
>>
>> I am writing some COM code in Python to control photoshop.  Several
>> functions of PS require an "Array" argument.  In the  examples of 
>> VBscript
>> or javascript the Array type is used.  I have tried what would appear to 
>> be
>> the equivalent in Python -- Lists and Tuples -- but to no avail. Anyone 
>> have
>> any insight  on what via the COM interface is equivalent to an Array in
>> javascript ?
>>
>> Here is the Javascript example code
>>
>> .....
>> selRegion  = Array(Array(1,1),Array(1,2),Array(2,2),Array(2,1))
>> Doc.Selection.Select(selRegion,1,0,0)
>> .....
>>
>> Here is my interpretation in Python
>>
>> .......
>> selregion = [(1,1),(1,2),(2,2),(2,1)]
>> print selregion
>> doc.Selection.Select(selregion,1,0,0)
>> ......
>>
>> Here is the error code generated
>>
>> ..........
>> F:\automation>test2.py
>> [(1, 1), (1, 2), (2, 2), (2, 1)]
>> Traceback (most recent call last):
>>   File "F:\automation\test2.py", line 19, in ?
>>     doc.Selection.Select(selregion,1,0,0)
>>   File "<COMObject <unknown>>", line 3, in Select
>> pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, 'Adobe
>> Photoshop', 'Illegal argument - argument 1\n- Only arrays
>> with dimension 1
>> are supported', None, 0, -2147220262), None)
>>
>>
>> ............
>>
>> I have tried many differnet permutations of structure for the selregion
>> variable.  Any scalar or single dimension array returns an "Illegal
>> Argument" response with no further details -- any thing that resembles a 
>> two
>> dimensional array returns the result above.
>>
>> Any help / thoughts would be appreciated
>>
>>
> 




More information about the Python-win32 mailing list