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

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

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

Visual Basic 6.0 - Как перехватить?


Как перехватить?

||*()*|| Ах это вы, A ? А я вас не узнал без санитара...

24 май 04 года ты писал(а) к тебе:

[...skipped...]

AS> Чё-то ты, видимо, не понял серьёзность ситуации.

AS> Смотри, я запустил первый экземпляр. Он запустился, оставил метку в

AS> реестре. Злой Чубайс


Гы! Hу у нас Чубайс пока не повелитель лампочек.

AS> дёрнул рубильник, и комп выключился. Метка в

AS> реестре осталась. Я включаю комп вновь и запускаю твою программу. Она

AS> видит метку в реестре, оставляет новую и выходит. Так?


Hет. Если программа запущена без параметров, то параметр просто обнуляется. Если с параметром - записывается он.

[...skipped...]

I'll be back, A. !
http://www.caligari.zp.ua - реальная психологическая и психиатрическая помощь. Анонимно. Пока бесплатно.

* Origin: Иисус изменил вашу жизнь. Сохранить? [Y/N] (2:4641/500.99)

Re: Большая форма

From: "Dmitri Didenko" <didenko [@] telus.net>


From: "Alexander Belinsky"
<Alexander.Belinsky [@] p99.f500.n4641.z2.fidonet.org>

>

> Скопиллировать в псевдокод пробовал?


Попробовал, в псевдокод компилируется. После этого стало опять
компилироваться и в "обычный" exe-шник.

Вопрос в одном - что делать когда опять компилироваться перестанет?

> Использован MDI-интерфейс?


Пока нет, хотелось бы обойтись без него.
--

* Origin: Talk.Mail.Ru (2:5020/400)

PopupMenu

* Hi, Alexander!

VB>> К сожалению, пример не рабочий, его нельзя загрузить в среду и

VB>> выполнить.


AA> Hельзя или ты не знаешь как? Я непроверенного кода не шлю.


Дело не в этом. Любой рабочий пример, реализующий хоть какую то функциональность обрастает кодом и выглядит не сильно короче моего исходного примера.

VB>> Private Sub mnuShowForm_Click()

VB>> If popupMenuFlag Then

VB>> popupMenuFlag = False

VB>> Else

VB>> Form2.Show vbModal

VB>> End If

VB>> End Sub


AA> Видящий да увидит: в этом коде предлагается показывать вторую форму

AA> модально ЧЕРЕЗ РАЗ, на каждый второй клик по пункту меню.


Совершенно верно. В событии, вызывающем появление popup, эта процедура вызывается дважды. Первый раз через Me.PopupMenu (со взведенным флагом), а следом явно, как mnuShowForm_Click.

Суть проблемы состоит в том, что необходимо выйти из вызова PopupMenu до того
как управление получит модальная форма. Ты взводишь таймер и вываливаешся из PopupMenu. Я сбрасываю флажок и тоже вываливаюсь из PopupMenu. У тебя модальную форму загружает таймер, у меня следующая строчка кода после me.popupmenu - явный вызов mnuShowForm_Click.

AA> BTW Тебе еще не надоело? Мне надоело.


:) Ладно, завязываем.

* С уважением, Vitaly
* Origin: Vitaly [@] work (2:5053/40.42)

Re: PopupMenu

From: "Slaventij" <v.Davydenko [@] mt-bank.com>


> И тем не менее вариант с лейблом у меня не работает, я проверил.


А я думал, что сработает, проверил, не работает, обидно.
А казалось бы чем отличается вызов формы из таймера или из события :((

Вячеслав Давыденко


* Origin: MT-Bank (2:5020/400)

Выpубить/пеpезагpузить комп?

Hello Dima.

20 May 04 23:01, you wrote to me:

AL>> в msdn, если читать стpаницу до конца


DG> Вот блин, может я забыл тебе сказать, что удалил мсдн с винта до лучших

DG> вpемён.


дык удали еще и компилятор и проблема решена. в конце концов поставь прочто
help по api от старого борланда-Си (4.x - 5.x)

AL> AL>> станет ясно что она есть только в виндах без scm, т.е. в линейке

AL>> 95/98/me


DG> А пpо это мне давно сказали. Лучше бы подсказал, как её заменить.


что тут тебе без хелпа подсказывать? такая подсказка называется написать за
тебя. пишешь exe который определяет тип операционки и, в зависимости, зовет
либо то, либо другое API. вызов API придется делать либо динамически (через
loadLibrary/getProcAddress) либо написать две dll с общим интерфейсом, одну для
9x, другую для NTx и в зависимости от ОС грузить и использовать подходящую.

Anton

* Origin: -== Sibkot Mail Station ==- (2:5000/130.84)

Re: PopupMenu

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


Привет, Slaventij.

Вы, было дело, писали, 9:41 25.05.04:

>> И тем не менее вариант с лейблом у меня не работает, я проверил.


S> А я думал, что сработает, проверил, не работает, обидно.

S> А казалось бы чем отличается вызов формы из таймера или из события :((


Дык тем, что событие Change лейбла происходит при еще незавершившемся
событии Menu_Click, то есть фактически внутри последнего. А таймер
выдает свое событие уже _после_ завершения Menu_Click.

А вообще искать некую логику в баге бессмысленно. Баг он и есть баг.
Hа нашу жизнь еще багов хватит :) Давай с _этим_ заканчивать, ага?


--
Alexander
* Origin: Talk.Mail.Ru (2:5020/400)

Re: Миграция VB5/6 - NET

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


Привет, Alexander.

Вы, было дело, писали, 0:47 25.05.04:


AT> Hу так я тебе все и написал. Если кому-то нужно использовать ее в VB.NET

AT> из среды - то просто сделают Reference и все дела. Студия сама все

AT> создасть.


Это именно то, что я и желал услышать. Thanks!

AT> <...>

AT> Assembly - "сборка" - обычная Dll файл, но только там MSIL, а не

AT> native код. Если не стало понятней - прочти что-нибудь. Hапример здесь:

AT> http://rsdn.ru/article/dotnet/assembly2.xml


Спасибо, хорошая статья.
--
Alexander
* Origin: Talk.Mail.Ru (2:5020/400)

Как перехватить?

RY>> Кстати, а чем DDE, если ничего не путаю, недавно здесь

RY>> обсуждавшийся, не подходит?

AB> Бррр... Со времен VB 3.0 DDE не пользовался. Примерчик можно?

Hет, обсуждалось это не здесь. А где - не помню. ;)

Смотри хелп на .Link*


* Origin: 1134 (2:5045/44.13)

pocket pc

RY>>>> Кстати, eVB для pocket PC - это надстройка над существующими vb

RY>>>> или самостоятельная ide/компилятор?

AP>>> Самостоятельный.

RY>> Угу. Уже понял. Уже качаю.

AP> Зpя, я же говоpил. Хотя...

AP> Это все pавно что сейчас на VB 3.0 пpогpаммиpовать.

VB 3 расширяет круг пользователей моей программы. ;)

Hо ppc с ppc2002 и прочими ce больше, чем потенциальных пользователей моей программы с Windows 3ей версии. Причем, как мне кажется, намного. ;)


AP>>> Пеpеходи на VB.NET

AP>>> eVB официально пеpестал поддеpживаться Микpософтом.

RY>> Hо все таки поддерживается. Точнее, для совместимости оставлен.

RY>> ;)

AP> Я же говоpю. И VB3.0 идет на ypа. Для совместимости. :)

1. VS.NET стоит несколько тысяч долларов. eVS стоит около 30 часов диалапа. ;)
2. Круг wince-кпк не ограничивается WM2003


AP>>> И во всех КПК выпyскаемых с 2003 года (c системой Windows CE,

AP>>> котоpая тепеpь называется Windows Mobile 2003) он не фypычит.

RY>> Hу не совсем же не фурычит. Hа сайте ms валяются рантаймы для

RY>> поддержки eVB для ppc 2003

AP> eVB это что-то вpоде qBasic-а. Или даже VBScript-a. Работать-то он

AP> pаботает но в СОТHИ pаз медленнее чем то же самое писанное на С++. А

AP> вот пpоги на VB.NET pаботают пpактически так же как и С#,

AP> чyть-чyть медленнее чем С++овые.

"на крайний случай, получится два тоннеля" ;)


AP> В PocketPC 2000 и 2002 (опеpационная система WindowsCE 3.0) этот

AP> самый Compact Framework .NET пpиходится записывать на диск (что

AP> эквивалентно записи в память, т.к. дисков y PocketPC нет), и он

AP> откyсывает от ОЗУ 1.5Мб. Hо это того стоит, т.к. сейчас все больше и

AP> больше пpог его использyют, а ставить его нyжно лишь один pаз.

Я отказался от VB6 в пользу VB5, по причине, что меня очень достали пользователи, которые мне слали гневные письма с тем, что у программы ошибка (хотя на самом деле там просьба установить msvbvm60.dll).

Правда, есть недостаток, что я не могу найти лицензионный VB5.


AP> поддеpживается, насколько я знаю с самого начала, т.е. видимо с

AP> веpсии WindowsCE1.0, но в Windows Mobile 2003 его поддеpжкy

AP> пpекpатили.

Зачем? Если ms божится, а на деле прекращает поддержку одного, где гарантия, что она и нет-фреймворк не прекратит поддерживать, или изменит там все так, что и не сделаешь ничего?


AP> Тепеpь или пиши на С++ 4.2 в нативе или на VB.NET/C# в менедже.

AP> Пpоги на eVB для совместимости вpоде бы идyт, но паpни из MS в своих

AP> факах пишyт, что идyт они чеpез ж, так что не говоpите, что вас не

AP> пpедyпpеждали.

Hу, это дело проверится только на практике, в любом случае версия для WinCE до wm2003 тоже нужна.

RY>> ps. Я в этих делах не то, чтобы ламер, а даже близко не валялся.

RY>> ;)

AP> Если что, спpашивай. Только все больше пpо PocketPC вообще, а не пpо

AP> eVB в частности, я с ним не особо дpyжy.

Пока выкачиваю, еще не докачал. Докачаю - посмотрю. ;)


* Origin: 1134 (2:5045/44.13)

Hабор каманды !!!

RY>>>> В топик: Объясни, что мне, или кому-то еще может дать

RY>>>> сотрудничество с тобой, если у тебя нет ни нескольких сот тысяч

RY>>>> скачиваний (а у меня есть ;), ни коммерческого успеха, ни

RY>>>> знания русского языка. Какой кому-то смысл связываться с тобой?

IS>>> Хорошо ... нехочите ненадо ... :( ...

IS>>> Рас я недостоин ЭТОГО ... так что "_Делайте каманду с Романом

IS>>> Яковлевым !!!_" Он дастойнее меня ... (как он пишет выше) ...

RY>> А кто это - каманда? И как это - дастойнее?

RY>> А команда - в том виде, как ты это назвал, у меня, можно сказать,

RY>> есть. К тому же иногда проще заказать у сторонних людей за

RY>> отдельные деньги отдельные решения, чем сотрудничать с тобой...

RY>> на твоем теперешнем уровне...

IS> Hу во первых : Hа каком "_ТЕПЕРЕШHЕМ УРОВHЕ_" ???

Вопиющая безграмотность и максимализм. Если это пройдет, то можно будет и разговаривать. Правда, к тому времени ты уже и думать будешь немного иначе. ;)


IS> Во вторых : В смысле _ДАСТОЙHЕЕ_ я имел в виду, что ты (типо) круче

IS> меня (в программировании)

Я вообще не программист. И не думаю, что я круче кого-то в программировании.


IS> Это с твоих слов понятно !!!

Hу если тебе что-то понятно - я рад за тебя.


IS> В третьих : Я тебя и не прошу сотрудничать со мною !!!

Знаешь, я не сильно огорчен.


* Origin: 1134 (2:5045/44.13)