![]() |
|
|
![]()
|
|
| Server |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 22.11.2005 Репутация: нет Всего: нет |
Доброго времени суток.
Мне нужно при запуске .com программы получить путь с какого места она запустилась(где расположена). Подскажите эту строку нужно искать в префиксе программного сегмента (PSP)? При загрузке (.exe) программы ds и es указывают на PSP При загрузке (.com) программы cs указывает на PSP В PSP по смещению 80H расположенна область DTA по умолчанию получает командную строку программы. Для .ехе
Пожалуйста подскажите. Заранее благодарю. |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: нет Всего: 454 |
Полное имя хранится не в PSP, а в блоке среды, адрес которой ты берешь из PSP.
-------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
| Chingachguk |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1232 Регистрация: 25.3.2002 Где: Москва Репутация: нет Всего: 18 |
Я полагаю, в DTA ничего по умолчанию нет. Необходимо получать текущий диск и каталог двумя функциями, например:
-------------------- I don't like the drugs (but the drugs like me). M.Manson. |
|||
|
||||
| Server |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 22.11.2005 Репутация: нет Всего: нет |
Спасибо большое.
А то кручусь на одном месте. Я смотрел в отладчике но по адресу ds:80H и ds:2cH ничего не было. Спасибо ещё раз, буду пробовать. |
|||
|
||||
| Server |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 37 Регистрация: 22.11.2005 Репутация: нет Всего: нет |
Chingachguk дал ответ прямо в точку.
Это у меня задание к контрольной работе Привязать запуск программы к диску т.е. программа должна запускаться только с определённого диска. Я думал сравнивать по букве диска а можно или даже нужно в данном случае сравнивать по номеру диска. То что предложил Akina тоже пригодиться. Akina Chingachguk Благодарю!!! |
|||
|
||||
| Akina |
|
|||
|
Советчик ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 20581 Регистрация: 8.4.2004 Где: Зеленоград Репутация: нет Всего: 454 |
При старте программы там находятся разобранные первые 2 FCB, если они были в параметрах командной строки.
Бесполезно... c:\ > d:\folder\filename.exe -------------------- О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума. |
|||
|
||||
![]()
|
| Правила форума "Asm: Общие вопросы" | |
|
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Asm: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |