• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Работа с объектами класса Paint.picture

  • Автор темы Guest
  • Дата начала
G

Guest

Здравствуйте, товарищи. Помогите разобраться с одной лотусной проблемой, возникшей на моем горизонте. Дело в том, что буквально на днях мной были предприняты попытки внедрить в Rich-Text-овое поле виндовый Com-объект класса Paint.Picture, он же PBrush (в миру просто графический редактор Paint). И хоть внедрить и запустить объект получилось, все попытки получить из него объект Application не увенчались успехом. Вот код:
Код:
Dim NUIWS As New NotesUIWorkspace
Set ND_Current=NUIWS.CurrentDocument.Document
Set NRTI=New NotesRichTextItem(ND_Current,"Pic")
Set EmbObj=NRTI.EmbedObject(EMBED_OBJECT,"Paint.Picture","")
Set handleV=EmbObj.Activate(True)
Set P=handlev.Object	  'вот здесь Лотус категорически возражает ("Object variable not set")
Set Paint=handleV.Application

EmbObj описан в Global Declaration

Кроме того, просто создать объект того же класса, юзая функцию CreateObject, оказалось ваще невозможно. Помогите пожалуйста в очередной раз побороть Lotus.

ПОСТКРИПТУМ: все поступившие готовые решения, предложения, вспомогательные примеры или хотя бы намеки на них, а также критику и обвинения в безбожном ламачестве приму с огромной благодарностью.
 
M

morpheus

а зачем его внедрять, если он поддерживает OLE Automation, то и работайте с paint как с любым оле сервером
 
G

Guest

Да все бы замечательно, только вот создать автоматический объект класса PBrush не представляется возможным...На этом месте Lotus сообщает "Cannot create automation object". Канает только внедрение объекта в RichText, да и то, как уже было сказано, без надежды на управление объектом..Вот я и думаю, что бы еще такого предпринять, чтобы Лотус принял объект Paint.Picture как родного и без лишних слов создал автоматический OLE
 
M

morpheus

Чесно , не нашёл упоминания что Paint.Picture есть OLE обьектом

Зачем вообще он Вам нужен
 
G

Guest

Чесно , не нашёл упоминания что Paint.Picture есть OLE обьектом

Зачем вообще он Вам нужен
Paint.Picture является OLE-объектом...Не верите - посмотрите в списке OLE-объектов, которые можно внедрить на форму командой меню Create - Object...Так вот, я планировал копировать ChartArea экселевского графика в Paint и таким образом получить в документе рисунок в RichText-м поле с постоянным смещением (известно, что смещение безбожно меняется, если копировать в ричтекст различные рисунки..Не то чтобы эта проблемы была для меня актуальной, потому что уже вижу альтернативу, но хотелось бы все же научиться работать с Paint
 
M

morpheus

я не кому не верю


<!--QuoteBegin-Программер+26:12:2007, 14:41 -->
<span class="vbquote">(Программер @ 26:12:2007, 14:41 )</span><!--QuoteEBegin-->посмотрите в списке OLE-объектов,
[snapback]91433" rel="nofollow" target="_blank[/snapback]​
[/quote] - а кто сказал что это OLE обьекты ? :)
 
G

Guest

я не кому не верю
- а кто сказал что это OLE обьекты ? :)
Ну, во всяком случае, в лотусном хэлпе прямым текстом сказано, что Lotus способен создать OLE Automation из любого виндового com-объекта, коим Paint, без всякого сомнения, является..Однако
практика показывает иное
 
M

morpheus

<!--QuoteBegin-Программер+26:12:2007, 14:59 -->
<span class="vbquote">(Программер @ 26:12:2007, 14:59 )</span><!--QuoteEBegin-->Коим Paint, без всякого сомнения, является
[snapback]91448" rel="nofollow" target="_blank[/snapback]​
[/quote]
а вот и не верю :)

и ЛОтус подтверждает обратое , т.к.
Set handleV=EmbObj.Activate(True)
и handleV IS Nothing потому что в хэлпе написано
Returns Nothing if the embedded object or object link does not support OLE automation.
 
G

Guest

а вот и не верю :)

и ЛОтус подтверждает обратое , т.к.
Set handleV=EmbObj.Activate(True)
и handleV IS Nothing потому что в хэлпе написано
Returns Nothing if the embedded object or object link does not support OLE automation.
Ну раз так, тогда очень обидно ((..Непонятным остается только один момент: какой смысл предоставлять юзеру такой сервайс как внедрение Пэйнта на форму, если нет никаких шансов поработать с ним как с OLE-сервером
 
M

morpheus

<!--QuoteBegin-Программер+26:12:2007, 15:13 -->
<span class="vbquote">(Программер @ 26:12:2007, 15:13 )</span><!--QuoteEBegin-->какой смысл предоставлять юзеру
[snapback]91456" rel="nofollow" target="_blank[/snapback]​
[/quote]
НУ потому что он ЮЗЕР и не будет работать с ним как с OLE Object'ом
 
G

Guest

НУ потому что он ЮЗЕР и не будет работать с ним как с OLE Object'ом

Ну да, и уж конечно юзер не полезет на форму..Я неправильно выразился..Не юзер,а разработчик, юзающий те или иные возможности Лотуса, пути которого, ИМХО, неисповедимы.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!