Вверх ↑
Этот топик читают: Гость
Разработчик
Ответов: 26149
Рейтинг: 2127
#151: 2009-09-13 10:10:10 ЛС | профиль | цитата
Не может такого быть, что-то не правильно настртено в системе, коли, она несчастны дамп читает за 5-6 мин, за такое время я дважды умудрялся передавать в системе огромные рисунки, в несколько сот Mb каждый
------------ Дoбавленo в 10.17:
Вообще-то нигде, а в HiAsm-e тем более, не найдеся ничего, чтобы работало быстрее. В компоненте применена API-функция Вмнды и Memory Stream, те, изначално ПО оказалось энергоемким, в угоду быстродействию.
карма: 22

0
Ответов: 19
Рейтинг: 2
#152: 2009-09-13 10:17:40 ЛС | профиль | цитата
Нет, в параллельном потоке не пробывал, как это сделать?
карма: 0

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#153: 2009-09-13 10:18:57 ЛС | профиль | цитата
Применить вот это для запуска дампа

Add(Thread,9531578,203,231)
{
}
карма: 22

1
Голосовали:Любитель Hiasm
Ответов: 19
Рейтинг: 2
#154: 2009-09-13 10:29:45 ЛС | профиль | цитата
Применить вот это для запуска дампа

Попробывал вставить в разрыв перед точкой запуска дампа, тогда не делается дамп
code_14921.txt
карма: 0

0
файлы: 1code_14921.txt [1.3KB] [1037]
Разработчик
Ответов: 26149
Рейтинг: 2127
#155: 2009-09-13 18:07:43 ЛС | профиль | цитата
Любитель Hiasm писал(а):
тогда не делается дамп

Немного неправильно. Запускать надо все в дополнительном потоке. Вот пример (читаем HiAsm)


Add(MainForm,16733700,252,280)
{
Width=133
Height=65
BorderStyle=5
}
Add(Button,918098,252,329)
{
Left=20
Top=10
Width=90
Caption="Извлечь ключ"
link(onClick,5743002:doStart,[])
}
Add(EnumProcess,1409621,427,329)
{
DebugPrivilege=0
Point(onFind)
Point(doFindName)
Point(doDumpMemory)
Point(onDumpMemory)
Point(onNotFind)
Point(doGetProcessAccount)
Point(onGetProcessAccount)
Point(Stream)
Point(doPosition)
link(onProcess,10764728:doPart,[])
link(ID,4947337:Value,[])
link(Name,12590447:Value,[])
link(onFind,1409621:doDumpMemory,[(471,342)(471,352)(415,352)(415,363)])
link(onGetProcessAccount,10693994:doCase,[(485,363)(485,293)])
}
Add(FilePart,10764728,511,329)
{
NameWOExt=1
link(onName,8511611:doCase,[(559,342)(559,400)(353,400)(353,363)])
}
Add(Memory,4947337,427,217)
{
Point(Data)
link(onData,1409621:doFindID,[(470,223)(470,203)(405,203)(405,342)])
link(Data,1409621:CurrentID,[(433,205)(421,205)(421,393)(433,393)])
}
Add(Thread,5743002,315,329)
{
Delay=100
FastStop=0
link(onExec,1409621:doEnum,[])
}
Add(Memory,12590447,434,280)
{
Default=String(avp.exe)
}
Add(Case,8511611,371,357)
{
Value=String(HiAsm.exe)
link(onTrue,1409621:doGetProcessAccount,[])
}
Add(Case,10693994,511,287)
{
Value=String(Администратор)
link(onTrue,4947337:doValue,[(555,300)(555,262)(415,262)(415,223)])
}




карма: 22

0
Ответов: 19
Рейтинг: 2
#156: 2009-09-14 06:46:49 ЛС | профиль | цитата
nesco,
У меня в приведенной выше схеме при вставке ее в Hiasm выдает сообщение "Точка входа onClik элемента Thread не найдена" обновление по svn не помогло.
карма: 0

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#157: 2009-09-14 08:21:49 ЛС | профиль | цитата
Любитель Hiasm писал(а):
У меня в приведенной выше схеме при вставке ее в Hiasm выдает сообщение

Убрал, непонятно откуда влезшие, три строчки
карма: 22

0
Ответов: 16884
Рейтинг: 1239
#158: 2009-09-14 10:21:53 ЛС | профиль | цитата
После того, как
nesco писал(а):
Убрал, непонятно откуда влезшие, три строчки
элементы в схеме удвоились.
Кто виноват ты или форум - не разбирался, но эффект конечно интересный.
компоненты растянул я (они лежат друг на друге )
карма: 25
Немного терпения! Дежурный экстрасенс скоро свяжется с Вами!
0
файлы: 1sn.png [11.2KB] [806]
Разработчик
Ответов: 26149
Рейтинг: 2127
#159: 2009-09-14 11:05:53 ЛС | профиль | цитата
Tad писал(а):
они лежат друг на друге

Перезалил схему
карма: 22

0
Ответов: 19
Рейтинг: 2
#160: 2009-09-14 11:54:48 ЛС | профиль | цитата
Del. Разобрался, не совпадали имена пользователей. Хотя дамп всеравно снимается долго, система уже чистая, Программа HiAsm_4.02b179
карма: 0

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#161: 2009-09-14 12:05:48 ЛС | профиль | цитата
Любитель Hiasm писал(а):
У меня при использовании компонента для запуска схемы в другом потоке, дамп не снимается

Даже на HiAsm.exe

Любитель Hiasm писал(а):
стоит значение остановить поток после первой итерации?

Поток остается запущенным до тех пор, пока не будет подана команда doStop или повторно не будет дана команда doStart после исполнения цепи событий, вызванной событием onExec при BusyEvent=Ignore. А то, что написано, означает что событие будет выдано на точку onExec только один раз и не будет выдаваться в цикле
------------ Дoбавленo в 12.15:
Dilma, описание FastStop и StopFlag совершенно неправильно отражают суть происходящего процесса. Написано, что поток останавливается, хотя, на самом деле, прекращается только выдача событий при запущенном потоке и управление передается главному потоку, но запущенный поток не останавливается
карма: 22

0
Ответов: 19
Рейтинг: 2
#162: 2009-09-14 12:27:18 ЛС | профиль | цитата
nesco,
Даже на HiAsm.exe

Все заработало, но дамп получается 156 мб и снимается 1,5 мин. Нельзя ли как в WinHex дампить именно сам процесс не прихватывая используемую библиотеками и прочим лишнюю память?
карма: 0

0
Разработчик
Ответов: 26149
Рейтинг: 2127
#163: 2009-09-14 12:38:36 ЛС | профиль | цитата
Любитель Hiasm писал(а):
Нельзя ли как в WinHex дампить именно сам процесс не прихватывая используемую библиотеками и прочим лишнюю память?

Мы тут это уже разбирали, у меня укоротить не получилось, или совсем надо концепцию менять. Но как лучше реализовать, предложений не поступало, и потому, я оставили это дело висеть "как есть"
карма: 22

0
Ответов: 2125
Рейтинг: 159
#164: 2009-09-14 15:29:45 ЛС | профиль | цитата
А нельзя, что-ли, сначала сдампить заголовок exe-шника (обычно по адресу 0x400000), а оттуда уже выудить размер и расположение секций?
карма: 1

0
Администрация
Ответов: 15295
Рейтинг: 1519
#165: 2009-09-14 15:49:21 ЛС | профиль | цитата
nesco писал(а):
описание FastStop и StopFlag совершенно неправильно отражают суть происходящего процесса. Написано, что поток останавливается, хотя, на самом деле, прекращается только выдача событий при запущенном потоке и управление передается главному потоку, но запущенный поток не останавливается

написано все правильно и запущенный поток останавливается
карма: 27
0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)