Современные решения

для защиты Windows приложений

и восстановления исходного кода

Visual Basic 6.0 - динамическое созд а ние


Re: динамическое созд а ние

Мы где-то виделись, Gennady?

11 Oct 03 21:40:09 в RU.VISUAL.BASIC Gennady Tarada -> All:


DK>> Dim l As Label

DK>> Set l = Controls.Add("VB.Label", "Label2")

DK>> With l

DK>> .Move 0, 0, 60, 16

DK>> .Caption = "Лейбл 2"

DK>> .Visible = True

DK>> End With


GT> а как события обрабатывать?


GT> Private Sub Label2_Click()

GT> Print "Hello!"

GT> End Sub


GT> ^^^^ не работает


Область описания:

Private WithEvents Label2 As Label

Ивент:

Private Sub Label2_Click()

Любое место: :)

Set Label2 = Controls.Add(...)
ну и далее по тексту.

Если объектов может быть создано неограничено много, и от всех надо ловить
ивенты - тоже есть решение, но я предоставляю право рассказать о нем Андрею
Федорову, так как эту идею услышал от него.

Всего хорошего!
Дмитрий Козырев aka Master

* Origin: Дорогу осилит идущий. (2:5023/11.148)

Re: Защита программ

From: "Igor Evgrafov" <ievgrafo [@] jba.ru>


Hello, Roman!
You wrote to Igor Evgrafov on Fri, 10 Oct 2003 11:02:23 +0400:

IE>>>> Более того я не видел на VB ни одной шаровары, даже

IE>>>> поганенькой... Дело впрочем хозяйское...

RY>>> http://attackie.com/obg.php ;)


[Sorry, skipped]


IE>> Хочется чтоб на некоторые неправильные ответы прога гнусно

IE>> прикалывалась :)

RY> А насчет ответов - могу поделиться исходниками, только у меня винт

RY> умирал, насколько они старые - не знаю. Сделаем СП. ;)


Я тут лет 12 игру Жизнь пишу. Сначала на focal, потом Pascal, потом VB,
потом VС++, теперь вот на C# корячусь %) Есть еще мысля сделать ее
распределенной. Она у меня в качестве подопытного кролика, как появляется
желание язык какой освоить или технологию - я пишу Жизнь %) А утром на
работу и опять ERP, кастомеры, суплайеры и прочие инвойсы...

RY> А вы говорите - нет, нет. ;)


Я говорил не видел. Если уж совсем точно то я имел ввиду то, что для шаровар
VB как то слабо подходит. Оно же конструктор типа Лего. Пока детальки есть
подходящие все хорошо, а как надо необычную детальку - имеешь секс стоя в
гамаке на лыжах... А если проект вздумал расти то тут уже совсем труба -
тушите свет, сливайте воду.

- ---
With best regards, Igor Evgrafov.


* Origin: Cronyx Plus ISP (2:5020/400)

Byte Array(Variant) and API (Part 2)

From: Alexander Asyabrik <belmis [@] mail.belpak.by>


Привет, Master.

Уверен я был, что этот вопрос закрыт, но не тут-то было.

Hапомню: была нужна функция, которая, получая массив байт внутри
переменной типа вариант, получала указатель непосредственно на
массив внутри варианта и передавала его в АПИ функцию для записи в
файл. Что с вашей помощью и было успешно реализовано.

И тут гром с ясного неба: пользователю потребовалось передавать
массив не внутри варианта, а объявленный как () As Byte, что я,
дурень, в спешке и не удосужился проверить. А оно, блин, вылетает
вместе с VB :(

Получается вот что: моя функция спокойно принимает в аргумент,
объявленный As Variant, этот массив, но этот аргумент внутри
функции ведет себя и не так, как переменная Variant, и не так как
'чистый' байтовый массив. В частности для полученного аргумента не
удается получить указатель на pvData структуры SAFEARRAY
(возвращается всегда 0). Попытка записи в файл, используя
классическую передачу в АПИ функцию первого байта массива, тоже
укладывает VB на лопатки:( И что здесь, на самом деле, представляет
из себя аргумент внутри функции? Я не въезжаю, чес слово...

Может, что подскажешь в обход проблемы? Как в этом случае получить
указатель на массив?

--
С уважением, Alexander
* Origin: Talk.Mail.Ru (2:5020/400)

Re: Byte Array(Variant) and API (Part 2)

From: "A. Skrobov" <tyomitch [@] r66.ru>


Hello, Alexander!
You wrote in conference fido7.ru.visual.basic to "All" <fido7.ru.visual.basic [@] talk.ru> on Sun, 12 Oct 2003 21:32:54 +0000 (UTC):


AA> Получается вот что: моя функция спокойно принимает в аргумент,

AA> объявленный As Variant, этот массив, но этот аргумент внутри

AA> функции ведет себя и не так, как переменная Variant, и не так как

AA> 'чистый' байтовый массив. В частности для полученного аргумента не

AA> удается получить указатель на pvData структуры SAFEARRAY

AA> (возвращается всегда 0). Попытка записи в файл, используя

AA> классическую передачу в АПИ функцию первого байта массива, тоже

AA> укладывает VB на лопатки:( И что здесь, на самом деле, представляет

AA> из себя аргумент внутри функции? Я не въезжаю, чес слово...

В этом случае третий DWORD варианта указывает не на SAFEARRAY, а как раз на первый байт массива.
Как различать эти два случая, сам догадаешься, или подсказать?


With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru
--
* Origin: Talk.Mail.Ru (2:5020/400)

астраиваемая панель инструментов

Привет всем !

А где можно найти эти контролы, описание к ним и кряки:
DataDynamics ActiveBar
Sherridan Toolbar

А еще, кто знает где достать ActiveX для использования в программе прилипающих
(dockable) окон. Hапример как в самом VB. У меня есть причем неплохой Dockable
Pro 2: окошки прилипаются в точности как в VB, но только у меня trial version, а
крак я найти нигде не смог.

Спасибо за внимание.

* Origin: WinPoint 95 is a girls best friend! (2:5059/28.35)

Векторный графический редактор

Hello !

У кого-нибудь есть тутор или пример сабжа, или где сие можно найти (URL)
Особенно интересует как сделать прокрутку области рисования и векторное
увеличение/уменьшение.

PS: Все процедуры рисования и проч должны быть реализованы с помощью API
функций, а иначе тормозной редактор получится ;)

Bye !

* Origin: WinPoint 95 is a girls best friend! (2:5059/28.35)

Re: астраиваемая панель инструментов

Мы где-то виделись, Andrey?

12 Oct 03 14:14:56 в RU.VISUAL.BASIC Andrey Shmelev -> All:


AS> А где можно найти эти контролы, описание к ним и кряки:

AS> DataDynamics ActiveBar


www.datadynamics.com
astalavista.box.sk (кряк)

AS> А еще, кто знает где достать ActiveX для использования в программе

AS> прилипающих (dockable) окон. Hапример как в самом VB.


Тот же DataDynamics. Просмотри все его семплы.

Всего хорошего!
Дмитрий Козырев aka Master

* Origin: Дорогу осилит идущий. (2:5023/11.148)

Re: Byte Array(Variant) and API (Part 2)

Мы где-то виделись, Alexander?

13 Oct 03 01:32:54 в RU.VISUAL.BASIC Alexander Asyabrik -> All:


AA> И тут гром с ясного неба: пользователю потребовалось передавать

AA> массив не внутри варианта, а объявленный как () As Byte, что я,

AA> дурень, в спешке и не удосужился проверить. А оно, блин, вылетает

AA> вместе с VB :(


Hе понимаю, ты ведь скриптовый компонент пишешь? А разве там есть Byte?

Или, если это компонент для программ на чистом VB, то тогда почему не
получается принять аргумент как () As Byte?

В общем, пример кода надо бы.

Всего хорошего!
Дмитрий Козырев aka Master

* Origin: Дорогу осилит идущий. (2:5023/11.148)

Re: Byte Array(Variant) and API (Part 2)

Мы где-то виделись, A.?

13 Oct 03 06:43:18 в RU.VISUAL.BASIC A. Skrobov -> Alexander Asyabrik:


AS> В этом случае третий DWORD варианта указывает не на SAFEARRAY, а как раз

AS> на первый байт массива. Как различать эти два случая, сам догадаешься, или

AS> подсказать?


Я что-то не нашел соотстветствующее значение vt. Hаиболее близко к нему
VT_ARRAY (но это первый случай) и VT_BYREF (но он только для одной
переменной).

Всего хорошего!
Дмитрий Козырев aka Master

* Origin: Дорогу осилит идущий. (2:5023/11.148)

Re: Byte Array(Variant) and API (Part 2)

From: "A. Skrobov" <tyomitch [@] r66.ru>


Hello, Dmitriy!
You wrote in conference fido7.ru.visual.basic to "A.Skrobov" <fido7.ru.visual.basic [@] talk.ru>to A. Skrobov on Mon, 13 Oct 2003

08:23:42 +0400:

AS>> В этом случае третий DWORD варианта указывает не на SAFEARRAY, а как раз

AS>> на первый байт массива. Как различать эти два случая, сам догадаешься,

AS>> или подсказать?

DK> Я что-то не нашел соотстветствующее значение vt. Hаиболее близко к нему

DK> VT_ARRAY (но это первый случай) и VT_BYREF (но он только для одной

DK> переменной).

Именно он, VT_BYREF + VT_UI1 (8209)


With best regards, A. Skrobov. E-mail: tyomitch [@] r66.ru
--
* Origin: Talk.Mail.Ru (2:5020/400)