Переключение на Главную Страницу Страницы: 1 [2] 3 4  ОтправитьПечать
Очень популярная тема (более 25 ответов) OleExSup- очередной костыль к семерке (число прочтений - 22447 )
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #15 - 11. Февраля 2009 :: 14:30
Печать  
DmitrO писал(а) 11. Февраля 2009 :: 13:33:
В виде SafeArray(VT_UI1) в OLE обычно обмениваются двоичными данными (картинки, тамбнейлы например, и прочая такая хрень), так что желательно иметь метод выгрузки в файл, или передачу в конструктор прикладного объекта (Картинка, ДвоичныеДанные например), чего 8ка кстати не умеет.
Улыбка
буквально сегодня утром думал об этом
  

1&&2&&3
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #16 - 17. Марта 2009 :: 06:49
Печать  
trad
Очередное спасибо. Улыбка
Использовал для работы с Traffic Inspector.
Все чудно.
  
Наверх
ICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #17 - 17. Марта 2009 :: 07:04
Печать  
Рад за тебя.
Если не сложно, опиши в общих чертах как применил инструмент
  

1&&2&&3
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #18 - 17. Марта 2009 :: 07:10
Печать  
trad писал(а) 17. Марта 2009 :: 07:04:
Рад за тебя.
Если не сложно, опиши в общих чертах как применил инструмент

Вспомнил про эту ВК, когда столкнулся с тем, что Трафик Инспектор возвращает массивы.
Код
Выбрать все
ТИ=СоздатьОбъект("TrafInsp.TrafInspAdmin");

Массив=Трэд.InvokeOLEMethod(ТИ,"APIGetUserState","Проба");
Для Сч=Массив.GetLBound() По Массив.GetUBound() Цикл
	Сообщить(Массив.GetValue(Сч));
КонецЦикла;
 

  
Наверх
ICQ  
IP записан
 
JohnyDeath
1c++ power user
1c++ donor
Отсутствует



Сообщений: 3050
Местоположение: Волгоград
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #19 - 17. Марта 2009 :: 08:59
Печать  
vip, а можешь поконкретнее рассказать что именно программно ты делаешь с ТрафикИнспектором?
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #20 - 17. Марта 2009 :: 09:12
Печать  
JohnyDeath писал(а) 17. Марта 2009 :: 08:59:
vip, а можешь поконкретнее рассказать что именно программно ты делаешь с ТрафикИнспектором?

если можно, то в отдельной ветке
  

1&&2&&3
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #21 - 17. Марта 2009 :: 10:16
Печать  
JohnyDeath писал(а) 17. Марта 2009 :: 08:59:
vip, а можешь поконкретнее рассказать что именно программно ты делаешь с ТрафикИнспектором?

Ничего, кроме как пополняю баланс клиента.

trad
Вопрос не стоит отдельной ветки. Серер Трафик Инспектора предоставляет обычный COM-объект.
  
Наверх
ICQ  
IP записан
 
artbear
1c++ developer
1c++ moderator
Отсутствует


Эх, дайте что-нибудь новенькое
да полезное потести

Сообщений: 6303
Местоположение: Москва
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #22 - 17. Марта 2009 :: 13:07
Печать  
Интересный вариант для передачи массивов

http://www.kb.mista.ru/article.php?id=180

Цитата:
OpenOffice

Основная проблема при работе с 7.7 - это проблема передачи массивов через COM.
Здесь предлагается, вероятно, наилучшее решение этой проблемы.
Оно базируется на идее и коде smаhаrbА на Нью-Территории 1С.

   scr = СоздатьОбъект("MSScriptControl.ScriptControl");
   scr.language = "javascript";
   scr.eval("Массив=new Array()");
   Массив = scr.eval("Массив");
   scr.AddCode("function SetItem(ind,val){Массив[ind]=val}");
   
   ServiceManager=СоздатьОбъект("com.sun.star.ServiceManager");
   scr.AddObject("ServiceManager",ServiceManager);
   Desktop = ServiceManager.createInstance("com.sun.star.frame.Desktop");
   Document = Desktop.LoadComponentFromURL("private:factory/scalc", "_blank", 0, Массив);
   Листы = Document.getSheets();
   Лист = Листы.getByIndex(0);
   Для к = 0 По 10 Цикл
     Лист.getCellByPosition(0,к).value = к;
   КонецЦикла;
   SaveParam =
   SaveParam.Name = "FilterName";
   SaveParam.Value = "MS Excel 97";
   scr.CodeObject.SetItem(0,SaveParam);
   Document.storeToURL("file:///c:/Test.xls",Массив);
  

OpenConf developer :: http://openconf.1cpp.ru&&FormEx developer :: http://formex.dorex.ru&&1C++ active developer && tester :: www.1cpp.ru
Наверх
GTalkSkype/VoIPICQ  
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #23 - 27. Марта 2009 :: 12:11
Печать  
trad
GetValue(Индекс1[, ..., ИндексN]) это понятно.

Объясни про GetValue(ТаблицаЗначений), плиз.
  
Наверх
ICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #24 - 27. Марта 2009 :: 12:19
Печать  
есть 3х-мерный массив

можно так
GetValue(10, 5, 14)

а можно так
Индексы=СоздатьОбъект("ТаблицаЗначений");
Индексы.КоличествоКолонок(1);
Индексы.КоличествоСтрок(3);
Индексы.УстановитьЗначение(1,1, 10);
Индексы.УстановитьЗначение(2,1, 5);
Индексы.УстановитьЗначение(3,1, 14);
GetValue(Индексы)
  

1&&2&&3
Наверх
 
IP записан
 
vip
1c++ power user
Отсутствует



Сообщений: 1570
Зарегистрирован: 19. Мая 2006
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #25 - 27. Марта 2009 :: 12:20
Печать  
А... Улыбка
Спасибо.
  
Наверх
ICQ  
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #26 - 27. Марта 2009 :: 12:22
Печать  
еще можно посмотреть пример рекурсивного обхода массива ОбойтиМассив2 в http://www.1cpp.ru/forum/YaBB.pl?num=1234282554/7#7
  

1&&2&&3
Наверх
 
IP записан
 
Bertysh
Junior Member
**
Отсутствует


KuziMed

Сообщений: 15
Местоположение: Брянск
Зарегистрирован: 13. Февраля 2007
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #27 - 23. Апреля 2009 :: 14:05
Печать  
Объясните чайнику как с помощью данной компоненты получить тип значения. Соль моего интереса в следующем я хочу подключится к восьмёрке и как то определить что вернула мне восьмёрка по ОЛЕ тип булево или тип число. Дело в том что восьмёрка восьмёрке передаёт тип булево, а вот 7.7 интерпретирует его как число. Пример на который я нарвался и смоделировал находится тут
http://1cniku.ru/Articles/V8OLE.html
  

Всё норм
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #28 - 24. Апреля 2009 :: 08:12
Печать  
Bertysh писал(а) 23. Апреля 2009 :: 14:05:
Объясните чайнику как с помощью данной компоненты получить тип значения.

никак
  

1&&2&&3
Наверх
 
IP записан
 
Bertysh
Junior Member
**
Отсутствует


KuziMed

Сообщений: 15
Местоположение: Брянск
Зарегистрирован: 13. Февраля 2007
Пол: Мужской
Re: OleExSup (beta) - очередной костыль к семерке
Ответ #29 - 26. Апреля 2009 :: 14:16
Печать  
trad писал(а) 24. Апреля 2009 :: 08:12:
Bertysh писал(а) 23. Апреля 2009 :: 14:05:
Объясните чайнику как с помощью данной компоненты получить тип значения.

никак

А есть какие то принципиальные непреодолимые ограничения или никак в данной версии компоненты.
  

Всё норм
Наверх
IP записан
 
Переключение на Главную Страницу Страницы: 1 [2] 3 4 
ОтправитьПечать