Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Изменение программы в ней самой


Автор: ProggerXandCo 29.8.2010, 16:12
Один неумный вопрос.
Можно ли сделать так, что текст, набранный в текстовом блоке, стал бы текстом подпрограммы (Sub), исполняемой для кнопки (то есть, написал ,что какая - то функция "x" равна 3, а потом изменить текстовым блоком значение "x" с 3 на 10)?То есть смена программного кода через текст-блок.

Автор: Dexx 1.9.2010, 01:33
Может сделать так, писать в текстовое поле vbs скрипт. По кнопке запускать и забирать результаты.
Только зачем, это всё?

Добавлено через 1 минуту и 23 секунды
Хотя наверное это не то что хочет ProggerXandCo

Автор: Akina 1.9.2010, 07:41
Можно внутри метода использовать вызов Evaluate из библиотеки MS Office.

Цитата(ProggerXandCo @  29.8.2010,  17:12 Найти цитируемый пост)
Можно ли сделать так

Это - идеальный способ обвалить приложение. Первая же опечатка или ошибка в контексте исполнения...

Автор: ProggerXandCo 1.9.2010, 19:51
Буду осторожен, только дайте, пожалуйста, краткий пример!
А сильны послеошибочные последствия ?...

Конечно, то!

Автор: Akina 1.9.2010, 20:38
Цитата(ProggerXandCo @  1.9.2010,  20:51 Найти цитируемый пост)
дайте, пожалуйста, краткий пример!

Откройте, например, Эксель, и читайте справку по Evaluate. Там есть и примеры.

Автор: suvorr 10.9.2010, 13:15
Цитата(ProggerXandCo @  29.8.2010,  16:12 Найти цитируемый пост)
Можно ли сделать так, что текст, набранный в текстовом блоке, стал бы текстом подпрограммы (Sub), исполняемой для кнопки (то есть, написал ,что какая - то функция "x" равна 3, а потом изменить текстовым блоком значение "x" с 3 на 10)?То есть смена программного кода через текст-блок.


Можно, но проблема в том,  что Винда запрещает переписывать код проги находящейся в работе.. Посему придется запустить "корректора", потом закрыть свою прогу, откорректировать ее экзек, потом снова запустить из корректора.. Как там в других ОС не знаю..  Но это только в смысле изменения внутренних текстовых параметров.. А если ты хошь писать код VB, то конечно придется аппелировать к какому-то компилятору или интерпретатору..

Автор: Akina 10.9.2010, 13:40
suvorr, речь не идёт об изменении исполняемого файла, насколько я понимаю.

Автор: suvorr 10.9.2010, 15:20
Ну, исходный вопрос можно по разному понять.. Этт надо у автора спросить.. Я так понимаю что интересен именно вопрос об изменении исполняемого кода "на лету".. потому что в других трактовках совсем непонятно в чем смысл..

Автор: ProggerXandCo 11.9.2010, 17:01
Добавлено @ 17:03
Цитата(suvorr @ 10.9.2010,  15:20)
Я так понимаю что интересен именно вопрос об изменении исполняемого кода "на лету".

Именно так.

Автор: Akina 12.9.2010, 11:38
ProggerXandCo, и ты полагаешь, что стало понятнее?
Уточни - изменение в памяти уже загруженного и исполняющегося кода, без изменения исполняемого файла на диске, или изменение исполняемого файла на диске с тем, чтобы в следующие запуски исполнялся изменённый код?

Автор: ProggerXandCo 12.9.2010, 21:48
И то, и другое, если можно, пожалуйста.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)