Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Два вопроса. Посмотрите, пожалуйста ! Добавлено: 16.05.04 21:08  

Автор вопроса:  arg

Первый вопрос такой. Как из обычной надписи на форме сделать ссылку для е-mail'а .

Второй вопрос. Как во время исполнения программы изменить какую-нибудь переменную или константу и перезаписать эту программу заново ( с измененными данными).

Ответить

  Ответы Всего ответов: 12  

Номер ответа: 1
Автор ответа:
 Ra$cal



ICQ: 8068014 

Вопросов: 18
Ответов: 817
 Web-сайт: www.rascalspb.narod.ru
 Профиль | | #1
Добавлено: 17.05.04 10:55

1) ShellExecute Form7.hwnd, vbNullString, "mailto:Rascalspb@narod.ru", vbNullString, "C:\", SW_SHOWNORMAL

2) Перезаписать ПРОГРАММУ... Лучше запиши изменённые данные в файл или реестр.

Ответить

Номер ответа: 2
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #2 Добавлено: 17.05.04 19:24

Для ShellExecute нужно обьявлять API, но можно так

Call Shell("explorer mailto:hammer@ipex.ru")

Ответить

Номер ответа: 3
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #3 Добавлено: 17.05.04 19:30

Второй вопрос: ни как, но если через попу....

Таскать в себе код, себя, и компилятор, если чо-то меняем то меняем это в коде и компилируем. Подробности не спрашуй, это я сочинил смотря на лампочку :)

Ответить

Номер ответа: 4
Автор ответа:
 Ra$cal



ICQ: 8068014 

Вопросов: 18
Ответов: 817
 Web-сайт: www.rascalspb.narod.ru
 Профиль | | #4
Добавлено: 18.05.04 11:20

2) При компиляциии строковые и другие константы не изменяются, то есть если открыть блокнотом, можно их увидеть, правда они обычно через один символ расположены. Так вот если их поменять в блокноте, то и впрограмме они изменятся. Если узнать, в каком порядке они записаны, можно через Get доставать и через Put изменять. Но это теоретически......

Ответить

Номер ответа: 5
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #5 Добавлено: 18.05.04 14:02

Вот именно, что теоретически

Поскольку обращение на изменение работающего в данный момент файла наверняка приведет к отказу в доступе,а следственно - к ошибке

Ответить

Номер ответа: 6
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #6
Добавлено: 18.05.04 15:08

Значит можно сделать по ламерски :) что же нам такие приемы запрещены чтоль :) Берем и зашиваем в свой ехе, какой-нить ехе, который будет менять наши данные в программе. Как потребуется, сохраняем этот модуль, запускаем его с какими-то ключами, определяющими новые данные, или данные можно передавать через WM_COPYDATA, выгружаемся, этот модуль их (данные) принимает, отслеживает закрытие программы, начинает запись в модуль программы пересланных ему данных, опосля, выгружается, не забыв запустить головную программу... Только не стоит забывать что все данные (строковые) должны иметь одинаковую длинну, ну или хотя бы заранее заданную, скажем 1024 байтами... причем не стоит забывать записываемые данные переводить в юникод (StrConv(str, vbUnicode))

Ответить

Номер ответа: 7
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #7 Добавлено: 18.05.04 16:21

И ты называешь этот способ "ламерским" ?

Да здесь нужно иметь кучу мозгов и времени

Если это по-ламерски, то я - Испанский летчик...

Ответить

Номер ответа: 8
Автор ответа:
 sne



Разработчик Offline Client

ICQ: 233286456 

Вопросов: 34
Ответов: 5445
 Web-сайт: hw.t-k.ru
 Профиль | | #8
Добавлено: 18.05.04 20:33

Да ладно тебе, что же тут сложного, даже я смогу такое сделать :) Тут просто способ кривоват...
А вообще, я там почитал один CrackMe, так там использовался самомодифицирующийся код, при этом там вручную какой-то прогой (врать не буду, уже не помню) устанавливались атрибуты секции, в результате чего можно было модифицировать свой исполняемый файл... Вот там действительно жуть :)

Ответить

Номер ответа: 9
Автор ответа:
 dNW



Вопросов: 30
Ответов: 683
 Профиль | | #9 Добавлено: 18.05.04 21:00

Ну я пока еще не пишу прог, которые ведут расчеты затрат на инет  :-)

только пока...

Ответить

Номер ответа: 10
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #10 Добавлено: 18.05.04 21:04

не, я немного не так придумал. Есть наша прога, в её код зашит каким-то алгоритмом ещё несколько файлов, а именно компилятор проекта в exe ну и точно компилируем, вот примерно список который должен получиться:

Project1.vbp; Form(x 1,2,3...);  *.bas....

ну короче эта же программа только в разработке, запускаеться наша программа (exe), там нажимаеться кнопочка, или не кнопочка, и вообщем извлекаеться наш проект этой прогрммы, то что надо заменям (переменные, ещё что-то) изменяються по условию (смотря какую кнопочку нажали в программе), вообщем всё это где-то в папку извлекли, изменили, запустили компилятор, скомпилировали новый exe уже с изменёнными данными, ну и как-то, может через bat файл модифицировали себя (себя удалили, и на своё место уже новый exe поставили).

Есть некоторые проблемы (ну для меня)

1) Я незнаю точно что нужно компилятору, какие ещё файлы итп...

2) Довольно проблемно их будет в коде держать все эти файлы (большой объём)

3) Нужно написать алгоритм кодировки любого файла в текст что этот текст потом в переменную вставить str$ = "xxxxxx...."

Ну впринципе всё, тоже довольно ламерский способ :)

 

Ответить

Номер ответа: 11
Автор ответа:
 HACKER


 

Разработчик Offline Client

Вопросов: 236
Ответов: 8362
 Профиль | | #11 Добавлено: 18.05.04 21:08

to  HammeR  Та чо, я писал, нечего сложного, если с такой проблемой не встретиться. Вообще её бы слегка дописать, несколько функций, и тоже прикольная прога бы получилась.

Ответить

Номер ответа: 12
Автор ответа:
 Sharp


Лидер форума

ICQ: 216865379 

Вопросов: 106
Ответов: 9979
 Web-сайт: sharpc.livejournal.com
 Профиль | | #12
Добавлено: 22.05.04 00:39
А нельзя ли просто создать новый файл, записать в него измененный ехе (читать ехе во время исполнения Винда разрешает), создать батничек, который заменил бы файл на новый и удалил вновь созданный и себя, запустить его и быстро выйти?

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам