Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
com и activate
|
|||
|---|---|---|---|
|
#18+
Добрый день! Есть такая .dll - ImageMagickObject. Использую Activate, чтобы подключить ее к Cache. И есть такой метод Convert. Activate создает для этого метода: Method Convert(ByRef pArrayVar As %Activate.SafeArray) As %Activate.Variant [ Final, Language = cache ] { New %result,%parms Set %parms=$ListBuild(i%%IDispatchPtr,$$$INVOKEFUNC,6) Set %parms=%parms_..%FormatKnownParam(.pArrayVar,3,16411) Set %result=$ZF($$$ORDINAL,$$$HANDLE,$$$ActXInvoke,%parms) If $List(%result,1)'=0 $$$ActXRaise(%result) Do ..%CopyBack(.pArrayVar,16411,$List(%result,5),"",0) Quit ..%MakeVariantReturnValue(%result) } В VisulStudio (ObjectBrowser) этот метод выглядит так Function Convert(pArrayVar() As Variant) As Variant Member of ImageMagickObject.MagickImage Поблема в следующем при таком запуске s im=##class(Activate.ImageMagickObject.MagickImage).%New() s res = im.Convert("c:/1.jpg c:/2.gif") Cache вываливается в отладчик VS. При запуске s im = ##class(%Activate.GenericObject).CreateObject("ImageMagickObject.MagickImage") s res = im.InvokeMethod1("Convert","c:/1.jpg c:/2.gif") Cache ругается на неверное число аргументом (objlasterror Исключение COM -21....) (пробовал s res = im.InvokeMethod2("Convert","c:/1.jpg","c:/2.gif") не получилось такая же ошибка) А вот код на VBS Set img = CreateObject("ImageMagickObject.MagickImage.1") msgs = img.Convert("'c:/1.jpg'","'c:/2.gif'") Работает нормально Подскажите,пожалуйста, в чем проблема Андрей (Cache 2008.1 winxp sp2) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2008, 10:57 |
|
||
|
com и activate
|
|||
|---|---|---|---|
|
#18+
Я в пятерке не нашел класса %Activate.SafeArray. Вероятно, это новый из 2008. Что, если нужно сделать объект такого класса, его заполнить и потом передать как аргумент? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2008, 14:21 |
|
||
|
com и activate
|
|||
|---|---|---|---|
|
#18+
datatype class %Activate.SafeArray extends %String ODBC Type: VARCHAR Class to represent SafeArray types for Activate. Array types cannot be supported by Activate.If the signature of an Activate generated contains an %Activate.SafeArray then activate will attempt to coerce that type to a string. This may or may not be successful depending upon the implementation of the ActiveX object that defines it Summary Методы DisplayToLogical IsValid LogicalToDisplay Normalize Я выделил жирным фразу которая конечно может ответить на часть вопроса. Но тогда почему не работает вызов через InvokeMethod1 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.08.2008, 14:41 |
|
||
|
com и activate
|
|||
|---|---|---|---|
|
#18+
To ajkot Вам обязательно нужно работать с ImageMagick через COM? Попробуйте так: Код: plaintext Если все файлы находятся в каталоге текущей области, то можно проще: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2008, 12:13 |
|
||
|
com и activate
|
|||
|---|---|---|---|
|
#18+
To Servit Добрый день! Да действительно можно использовать zf(-1) к этому я уже пришел. Но для такого использование необходима установка всего пакета, а с com мне хватит 3 dll. Хотелось красиво решить проблему. Да и потом немного раздражает тот факт, что не могу понять в чем проблема заключается. Я, например, использовал com для связи с 1С(77,8) и никаких трудностей не возникало... В любом случае Спасибо за совет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.08.2008, 12:47 |
|
||
|
|

start [/forum/topic.php?fid=39&msg=35506100&tid=1558648]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
53ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
43ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 362ms |

| 0 / 0 |
