Рассылка закрыта
При закрытии подписчики были переданы в рассылку "RFpro.ru: Ассемблер? Это просто! Учимся программировать" на которую и рекомендуем вам подписаться.
Вы можете найти рассылки сходной тематики в Каталоге рассылок.
RusFAQ.ru: программирование на языке Assembler
Информационный Канал Subscribe.Ru |
RusFAQ.ru: программирование на языке Assembler
Выпуск № 419
от 18.11.2002, 16:50
Администратор: Имя: Калашников О.А. URL: Информационный ресурс ICQ: 68951340 Россия, Москва |
О рассылке: Задано вопросов: 1849 Отправлено ответов: 5774 Активность: 312.2 %
|
Список экспертов, ответы которых опубликованы в данном выпуске |
masquer Статус: Профессиональный Общий рейтинг: 152.44 [Подробней >>] |
Sensey Статус: Профессиональный Общий рейтинг: 123.07 URL: Страничка рассылки по Паскаля... Телефон: +38 (0572) 41-76-04 дом. [Подробней >>] |
Eugene Статус: Опытный Общий рейтинг: 111.77 URL: мощный файловый архив [Подробней >>] |
vitya Статус: Профессиональный Общий рейтинг: 108.4 [Подробней >>] |
Bob Johnson Статус: Профессиональный Общий рейтинг: 155.77 [Подробней >>] |
Остапенко александр Статус: Начальный Общий рейтинг: 114.7 [Подробней >>] |
kvINT Статус: Профессиональный Общий рейтинг: 107.55 Телефон: (34316)2-31-45 [Подробней >>] |
ASMодей Статус: Профессиональный Общий рейтинг: 119.95 [Подробней >>] |
Supra Статус: Опытный Общий рейтинг: 117.6 [Подробней >>] |
St Статус: Опытный Общий рейтинг: 116.31 [Подробней >>] |
LIFO Статус: Профессиональный Общий рейтинг: 127.72 URL: наш сайт Телефон: 8 01710 24758 [Подробней >>] |
keleb-glin Статус: Начальный Общий рейтинг: 120.4 [Подробней >>] |
Broken Sword Статус: Профессиональный Общий рейтинг: 130.18 URL: моя рассылка по Protected Mode [Подробней >>] |
Beeblebrox Статус: Профессиональный Общий рейтинг: 112.55 URL: Beeblebrox / TMA HomePage [Подробней >>] |
Ayl Статус: Профессиональный Общий рейтинг: 117.37 [Подробней >>] |
Dark_Lord Статус: Профессиональный Общий рейтинг: 126.37 [Подробней >>] |
Краткий перечень вопросов |
Вопрос № 1783. Здравствуйте хочу спрасить у Вас 1.Пожалуста объясните, а лучше привидите пример, поиска нужного фай... (ответов: 1)
Вопрос № 1784. Здравствуйте эксперты. Не могли бы вы прислать опр. конгруэнтности двух чисел a и b.... (ответов: 3)
Вопрос № 1785. Здравствуйте, Bob Johnson! Извините за задержку с ответом, не было времени даже почитать рассылку. В... (ответов: 1)
Вопрос № 1787. какие значения может принимать переменная типа BOOL ( C++ )??... (ответов: 1)
Вопрос № 1788. пошел нахуй... (ответов: 5)
Вопрос № 1789. Следующий код у меня работает (что неудивительно): см приложение. Но стоит мне заменить в помеченной... (ответов: 1)
Вопрос № 1790. Спасибо, но исходников много, мне бы как раз задания и нужны.... (ответов: 1)
Вопрос № 1791. кто подскает, почему я не вижу кнопки ( дочернего окна ) ? make.bat tasm32 /la /m3 /ml %1.asm tlink3... (ответов: 2)
Вопрос № 1793. Здравствуйте. Из выпуске №13 рассылки "Ассемблер? Это просто! ..." - там где изучается вир... (ответов: 7)
Вопрос № 1794. Добрый день, уважаемые эксперты. 1. Есть приложение, не маленькое (около 1 метра), оно толкается с C... (ответов: 2)
Вопрос № 1795. Здравствуйте эксперты! Как узнать полный путь к любому файлу. Просто пишу программу, которая должна ... (ответов: 8)
Вопросов: 11, ответов: 32
Вопрос № 1783 |
Здравствуйте хочу спрасить у Вас
1.Пожалуста объясните, а лучше привидите пример, поиска нужного файла ну и вывода его пути на экран
2.можно ли под dos работать с реестром(и если можно то с примерчиком)
3.и все же объясните, на примере, как открыть файл(не обязятельно текстовой), вывести его содержимое и найти нужную строчку и изменить ее
Вопрос отправлен: 13.11.2002, 01:51
Отправитель: lamachok (lamachok@mail.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает masquer
Приветствую Вас, lamachok!
1. Слишком мало информации о задаче - что значит нужный файл, где его искать, операционная система?
2. Можно, если знаешь формат файла реестра
3. Под виндовз API - CreateFile->ReadFile->CloseFile, под DOS - соответствующие функции 21-го прерывания. Принцип один и тот же. Найти строчку тоже понятие сложное, если алгоритм и скорость не важны то прямым перебором.
Вообще на неконкретные вопросы сложно отвечать, поэтому и ответы такие.
Ответ отправлен: 13.11.2002, 12:06
Отправитель: masquer
Вопрос № 1784 |
Здравствуйте эксперты.
Не могли бы вы прислать опр. конгруэнтности двух чисел
a и b.
Вопрос отправлен: 13.11.2002, 08:35
Отправитель: kuper
[Следующий вопрос >>] [Список вопросов]
Отвечает Sensey
Доброе время суток, kuper!
http://www.yandex.ru/yandsearch?rpt=rad&text=%EA%EE%ED%E3%F0%F3%FD%ED%F2%ED%EE%F1%F2%FC+%E4%E2%F3%F5+%F7%E8%F1%E5%EB
(конгруэнтность двух чисел)
7 ссылка:
числа a и b связаны отношением конгруэнтности по модулю m, если a-b делится на m
Ответ отправлен: 13.11.2002, 15:30
Отправитель: Sensey
Отвечает Eugene
Здравствуйте, kuper!
congruence n конгруэнтность (числа a и b связаны отношением конгруэнтности по модулю m, если a-b делится на m)
congruent adj конгруэнтный; a is ~ to b modulo m число a конгруэнтно числу b (a-b делится на m)
Конгруэнтность (лат. congruens - совпадающий) - количественная равнозначность качественно равноценных (эквиполентных) состояний какого-либо процесса.
и т.п.
P.S.это всё найдено на просторах инета за 2 минуты.
Ответ отправлен: 13.11.2002, 08:57
Отправитель: Eugene
Отвечает vitya
Добрый день, kuper!
Если опр. - это определение, то, насколько я помню,
говорится, что a конгруэнтно b по модулю n, тогда и только тогда, если
(a - b) == 0 mod n (где == тождественно равно, три параллельные палочки)
Ответ отправлен: 13.11.2002, 09:29
Отправитель: vitya
Вопрос № 1785 |
Здравствуйте, Bob Johnson!
Извините за задержку с ответом, не было времени даже почитать рассылку. Все еще с нетерпением жду исходник звонилки и уже с нетерпением курсовой по драйверам. Мой почтовый сервер иногда глючит, имейте в виду.
Заранее благодарен, EraSer
Вопрос отправлен: 13.11.2002, 09:20
Отправитель: EraSer (eraser99@tut.by)
[Следующий вопрос >>] [Список вопросов]
Отвечает Bob Johnson
Добрый день, EraSer!
Высылаю и то и другое. Так что лови...
Ответ отправлен: 14.11.2002, 14:25
Отправитель: Bob Johnson
Вопрос № 1787 |
какие значения может принимать переменная типа BOOL ( C++ )??
Вопрос отправлен: 13.11.2002, 15:35
Отправитель: вася
[Следующий вопрос >>] [Список вопросов]
Отвечает Остапенко александр
Доброе время суток, вася!
Типа, только true(истина)=1 и false( ложь)=0
Ответ отправлен: 13.11.2002, 15:44
Отправитель: Остапенко александр
Вопрос № 1788 |
пошел нахуй
Вопрос отправлен: 13.11.2002, 15:49
Отправитель: вася
[Следующий вопрос >>] [Список вопросов]
Отвечает Bob Johnson
Доброе время суток, вася!
У-у как умно.
Ответ отправлен: 14.11.2002, 14:25
Отправитель: Bob Johnson
Отвечает Остапенко александр
Приветствую Вас, вася!
Сам пошел
Ответ отправлен: 15.11.2002, 06:31
Отправитель: Остапенко александр
Отвечает kvINT
Приветствую Вас, вася!
Предложение следует начинать с большой буквы.
Предлог "на" пишется отдельно.
Предложение следует заканчивать точкой.
В общем, "банан" тебе, Вася!
Go back to scool.
Ну и поздравляю - наверное, первый раз в жизни к компьютеру подпустили.
Ответ отправлен: 13.11.2002, 18:12
Отправитель: kvINT
Отвечает vitya
Доброе время суток, вася!
Вася, бля буду, ты поразил меня своим интеллектом.
Сам пошел на хуй... промудонец ебнутый на три четверти! :)
Спасибо за внимание...
Ответ отправлен: 13.11.2002, 16:25
Отправитель: vitya
Отвечает ASMодей
Добрый день, вася!
Ну раз пошел, то иди, счастливого пути!
Ответ отправлен: 14.11.2002, 06:20
Отправитель: ASMодей
Вопрос № 1789 |
Следующий код у меня работает (что неудивительно): см приложение.
Но стоит мне заменить в помеченной строчке 101h (640x480x256) на 103h (800x600x256) или на бОльшие значения, то программа перестает работать.
Режим устанавливается (так как происходит проверка и если режим не установится, то перейдет на exitprog), но на экране ничего не рисуется.
Пробовал смотртеь информацию о режиме - функция проходит успешно, но регистры es:di пусты.
Вы не знаете, в чем может быть проблема?
Заранее спасибо!
Приложение:
Вопрос отправлен: 13.11.2002, 19:54
Отправитель: Andrey
[Следующий вопрос >>] [Список вопросов]
Отвечает Supra
Здравствуйте, Andrey!
У тебя не работает этот режим, не поддерживается.
Почитай, возможно это как-то проверить.
Ответ отправлен: 15.11.2002, 17:14
Отправитель: Supra
Вопрос № 1790 |
Спасибо, но исходников много, мне бы как раз задания и нужны.
Вопрос отправлен: 13.11.2002, 22:23
Отправитель: Алексей
[Следующий вопрос >>] [Список вопросов]
Отвечает Bob Johnson
Приветствую Вас, Алексей!
Ок, попробую написать задания на основе тех программ.
1. Дана строка символов (в конеце - 0). Посчитать общее число бит равных 1 в этой строке и найти номера символов строки, в которых (при двоичном представлении) встречается 4 единицы подряд.
2. Ввести с клавиатуры строку. Выделить из нее все числа и вывести на экран. Например, введено: 123лоло34434с5. программа должна вывести: 123, 34434, 5.
3. Организовать посимвольный ввод строки с клавиатуры. Если вводимый символ - латинская буква, отобразить ее на экране (в процессе ввода) один раз. Если русская буква - 2 раза, если цифра - 3 раза, иначе - 4 раза. По нажатию Enter вывести введенную строку без повторов и завершить работу программы.
4. Написать программу, осуществляющую ввод числа с клавиатуры и вывод его на экран в 16-й, 8-й и двоичной системах счисления. Выполнить контроль ввода и контроль переполнения.
5. Написать программу, которая будет последовательно вводить несколько строк текста с клавиатуры (до 40), сохраняя их во время ввода в стек и затем (по вводу пустой строки) выводить все введенные строки на экран в порядке их ввода (вариант 2 - в обратном порядке).
6. Написать программу, осуществляющую поиск подстроки в строке без учета регистра.
Ответ отправлен: 14.11.2002, 14:27
Отправитель: Bob Johnson
Вопрос № 1791 |
кто подскает, почему я не вижу кнопки ( дочернего окна ) ?
make.bat
tasm32 /la /m3 /ml %1.asm
tlink32 /Tpe /aa /c /x %1.obj,,,,,%1.res
.386
.model flat, stdcall
include windows.inc
includelib import32.lib
extrn ExitProcess:PROC
extrn GetModuleHandleA:PROC
extrn LoadCursorA:PROC
extrn LoadIconA:PROC
extrn RegisterClassA:PROC
extrn CreateWindowExA:PROC
extrn ShowWindow:PROC
extrn UpdateWindow:PROC
extrn GetMessageA:PROC
extrn TranslateMessage:PROC
extrn DispatchMessageA:PROC
extrn DefWindowProcA:PROC
.data
szClassName db 'my',0
szTitleName db 'мое окно',0
button_class db 'button',0
button_text db 'm',0
button_id equ 1
.data?
msg MSGSTRUCT >
wc WNDCLASS >
h_proc dd ?
h_window dd ?
.code
start:
call GetModuleHandleA, NULL
mov [h_proc],eax
;------------------------------------------------------------ регистрируем класс и создаем окно
mov [wc.clsStyle], CS_HREDRAW+CS_VREDRAW
mov [wc.clsLpfnWndProc], offset DemoWndProc
mov [wc.clsCbClsExtra], NULL
mov [wc.clsCbWndExtra], NULL
mov eax, [h_proc]
mov [wc.clsHInstance], eax
call LoadIconA, 0, IDI_APPLICATION
mov [wc.clsHIcon], eax
call LoadCursorA, 0 ,IDC_ARROW
mov [wc.clsHCursor], eax
mov [wc.clsHbrBackground], DEFAULT_PALETTE
mov [wc.clsLpszMenuName], NULL
mov [wc.clsLpszClassName], offset szClassName
call RegisterClassA, offset wc
call CreateWindowExA,
NULL,
offset szClassName,
offset szTitleName,
WS_OVERLAPPEDWINDOW,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
CW_USEDEFAULT,
NULL,
NULL,
[h_proc],
NULL
mov [h_window], eax
call ShowWindow, [h_window], SW_SHOWNORMAL
call UpdateWindow, [h_window]
;-----------------------------------------------------
msg_loop: ;
call GetMessageA, offset msg, 0, 0, 0 ;
.if eax != 0 ;
call TranslateMessage, offset msg ; обработка сообщений
call DispatchMessageA, offset msg ;
jmp msg_loop ;
.endif ;
;-----------------------------------------------------
;---------------------------------------------------------- оконная процедура
;
DemoWndProc proc hwnd:DWORD, wmsg:DWORD, wparam:DWORD, lparam:DWORD ;
;
.if wmsg==WM_DESTROY
call ExitProcess, 0
.elseif wmsg==WM_CREATE
call CreateWindowExA, NULL, offset button_class, offset button_text,
WS_CHILD+WS_VISIBLE+BS_PUSHBUTTON,
50, 50, 50, 50, [h_window], button_id, [h_proc], NULL
ret
.else
call DefWindowProcA, [hwnd],[wmsg],[wparam],[lparam]
ret ;
.endif
DemoWndProc endp ;
end start
Вопрос отправлен: 14.11.2002, 08:54
Отправитель: Bkmz (mis421@list.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает St
Привет, Bkmz!
Посмотрел а вашу программу и для начала нашел несколько ошибок и не совсем удачных решений:
1)tlink32 /Tpe /aa /c /x %1.obj,,,,,%1.res - откуда *.res?
2) Совет - includelib import32.lib - не будет отладочной информации под TD32, лучше указать библиотеки в командах tlink (по крайней мере у меня так).
3)msg MSGSTRUCT >
wc WNDCLASS > - пропущены > - tasm ругается
4)в том виде в котором до меня дошло длинные строки при CALL загнулись и пришлось ставаить после них - с ними и читается легче, когда строки длинные.
5)теперь о том почему не выводилась кнопка: при обработке WM_CREATE управление еще не возвращалось после функции первой CreateWindowEx и следовательно [h_window] еще не определен, однако уже можно пользоваться [hwnd] описанного а DemoWndProc proc hwnd:DWORD, wmsg:DWORD, wparam:DWORD, lparam:DWORD
6)вроде всё!
St
Ответ отправлен: 14.11.2002, 14:09
Отправитель: St
Отвечает Bob Johnson
Доброе время суток, Bkmz!
Я сейчас не могу утверждать на 100%, но есть подозрение, что и не увидишь ты так никакой кнопки! Оно такое: WM_CREATE тебе приходит в тот момент, когда ты вызываешь CreateWindow, т.е. в это время еще твой [h_window] не определен (т.к. CreateWindow не вернулась и ты его не загрузил верным значением). Вывод - используй в качестве хэндла родительского окна [hwnd], которая всегда достоверна при вызове оконной процедуры. И вообще, есть смысл везде внутри процедуры окна, когда нужен его хэндл использовать передаваемый ей параметр, а не глобальную переменную. Пример - много одинаковых окон твоего класса.
Ответ отправлен: 15.11.2002, 13:55
Отправитель: Bob Johnson
Вопрос № 1793 |
Здравствуйте.
Из выпуске №13 рассылки "Ассемблер? Это
просто! ..." - там где изучается вирус:
; переход на сегмент 0BF00h - страница дисплея:
jmp dword ptr cs:[Off_move]
Этот jmp, если я правильно понимаю, предполагает, что где-то выше произошло CS := 0BF00h (7 страница дисплея), но это присваивание значения было выполнено для регистра ES:
mov es,Seg_move
Seg_move изначально было задано как 0BF00h.
Как же CS получает нужное значение ?
Спасибо.
Приложение:
Вопрос отправлен: 14.11.2002, 10:41
Отправитель: Bayram Annanurov
[Следующий вопрос >>] [Список вопросов]
Отвечает Supra
Доброе время суток, Bayram Annanurov!
Рассылки перед глазами нет. Что записано в [Off_move].
Судя по всему, там OBF00h.
Ответ отправлен: 15.11.2002, 16:50
Отправитель: Supra
Отвечает Bob Johnson
Приветствую Вас, Bayram Annanurov!
Ну так ведь jump-то DWORD PTR, т.е. ДАЛЬНИЙ. Это значит, что по адресу cs:[Off_move] находится 4 байта адреса назначения в формате сегмент:смещение. Вот и все.
Ответ отправлен: 15.11.2002, 13:55
Отправитель: Bob Johnson
Отвечает LIFO
Здравствуйте, Bayram Annanurov!
А комментарии читать не умеем?
; Что показал отладчик? Подумайте, что произошло...
Так вот вначале надо было в отладчике посмотреть.
Мы прыгаем двойным джампом,т.е. смещение+сегмент на адрес cs:0103 ( а там находится твоя видеостраница и смещение Off_move .
А вообще нужно отладчиком пользоваться.
Ответ отправлен: 16.11.2002, 21:05
Отправитель: LIFO
Отвечает keleb-glin
Добрый день, Bayram Annanurov!
Всё дело в том, что в строке:
jmp dword ptr cs:[Off_move]
указано именно dword ptr, т.е прыжок произойдёт по четырёхбайтовому абсолютному адресу (в указанный сегмент по указанному смещению), указанному после метки Off_move.
Тогда в CS запишутся вторые два байта (номер сегмента), а IP станет равным первым двум (смещение).
Почему не наоборот? Потому что в архитектуре IBM PC было принято записывать в память word'ы, dword'ы и т.д. задом наперёд. Т.е. для прыжка нужно записать в память сегмент и смещение так, чтобы сначало шло смещение, а потом - сегмент, что и сделано в данном примере.
Ответ отправлен: 14.11.2002, 18:20
Отправитель: keleb-glin
Отвечает Broken Sword
Здравствуйте, Bayram Annanurov!
нет, вы неправильно предполагаете. Переход будет произведен не на CS:off_move, а на адрес, который находится ПО АДРЕСУ CS:Off_move!!! Для того и нужны квадратные скобки.
А что у нас по адресу CS:off_move?
Off_move dw offset Lab_jmp ;Смещение и
Seg_move dw 0BF00h ;сегмент адреса
Ответ отправлен: 14.11.2002, 13:58
Отправитель: Broken Sword
Отвечает Beeblebrox
Здравствуйте, Bayram Annanurov!
Написано же как - из ячейки dword ptr cs:[Off_move], содержимое которой ты не привел в приложении
Ответ отправлен: 14.11.2002, 11:23
Отправитель: Beeblebrox
Отвечает Ayl
Добрый день, Bayram Annanurov!
Неправильно понимаешь. Было бы так, как ты сказал, если бы было бы написано так:
jmp far cs:Off_move
а в твоем примере вокруг Off_move стоят квадратные скобочки! Т.е. это не прямая адресация, а косвенная, т.е. адрес перехода записан в памяти по адресу cs:Off_move. Адрес для дальнего перехода занимает 4 байта, поэтому в команде указывается преобразование dword ptr.
А по адресу cs:Off_move должно быть записано что-то типа:
xx xx 00 BF
Первые 2 байта представляют собой смещение и попадают в регистр IP, 2 следующих - сегмент (0BF00h, как обычно, порядок записи байт в слове обратный). Это значение записывается в регистр CS. Вот, собственно, и все.
Ответ отправлен: 14.11.2002, 11:25
Отправитель: Ayl
Вопрос № 1794 |
Добрый день, уважаемые эксперты.
1. Есть приложение, не маленькое (около 1 метра), оно толкается с CD (типа авторун), потом, в самом начале WinMain() оно говорит вставьте диск 2, с которого это приложение хочет что-то запустить, и две кнопки Retry и Cancel, при этом по Cancel оно продолжает работать. Но при вставке второго диска и при нажатии Cancel выводится системное окно с сообщением, что типа нужно вставить первый диск, с которого было запущено приложение, и если в этом окне надавить Cancel, то происходит падение с кодом 0xC0000013 (точно не помню, но это код типа STATUS_WRONG_VOLUME или
STATUS_NO_MEDIA_IN_DEVICE). Как я понимаю, просто EXEшник открыт на memory mapping, но еще не весь затянут в память, и при попытке его продолжить система пытается его подсосать в PAGEFILE, а диска с приложением в приводе нет. Вы не знаете или нигде не видели, как бороть эту проблему??? Ведь InstallShield умеет это делать, хотя я сам несколько раз видел, как он устойчиво падал с таким же сообщением при вставке второго диска и нажатии кнопки Cancel (отмены продолжения инсталяции) без обратной вставки первого диска.
2. Как приложению самому себя удалить после окончания
выполнения, метод отложенного удаления не подойдет??? Я читал, что DeleteFile() под Win9X сработает, а под WinNT нет. Что делать???
Заранее спасибо. Очень надеюсь на ваши советы :-)))
Вопрос отправлен: 14.11.2002, 11:39
Отправитель: NizeG (nizeg@beep.ru)
[Следующий вопрос >>] [Список вопросов]
Отвечает Bob Johnson
Приветствую Вас, NizeG!
2. Меня реально заинтересовал твой вопрос и я стал смотреть любимый всеми MSDN. Как обычный смертный юзер я предположил, что флаг FILE_FLAG_DELETE_ON_CLOSE поможет мне решить эту задачу - я ввел его в строке поиска и нашел статью некого Джеффри Рихтера, который с приличной долей юмора рассказывал о своих попытках решить твой вопрос. Скажу сразу - он пробовал этот флаг - не пошло, он пробовал вызывать FreeLibrary - тоже не пошло. И знаешь на чем он остановился? На обычных bat-файлах. Потому что они МОГУТ удалять себя. Вот он запускает такой батничек, делает так, чтобы консоль была невидима и тот удаляет и его екзешник и себя самого. Можешь сам прочитать его творчество - тоже воспользуйся поиском в MSDN.
1. Не могу утверждать, т.к. вот тоже только сейчас полез искать про memory mapping, но предположу, что тебе нужно "его весь затянуть", т.е. просто прочитать его какой-нибудь lodsd.
Ответ отправлен: 15.11.2002, 13:56
Отправитель: Bob Johnson
Отвечает Остапенко александр
Здравствуйте, NizeG!
Ответ отправлен: 15.11.2002, 07:42
Отправитель: Остапенко александр
Вопрос № 1795 |
Здравствуйте эксперты!
Как узнать полный путь к любому файлу. Просто пишу программу, которая должна изменить имя файлов в директории, в которой она запущена. Думал, узнать путь к программе, потом удалить ее имя из пути и подставить имя нужного файла, но чего-то это муторно уж очень, нет ли чего проще?
--
С уважением, ILYA D.
Вопрос отправлен: 14.11.2002, 16:48
Отправитель: ILYA D.
[Следующий вопрос >>] [Список вопросов]
Отвечает Supra
Доброе время суток, ILYA D.!
Муторно, а что делать.
Ответ отправлен: 15.11.2002, 16:46
Отправитель: Supra
Отвечает Bob Johnson
Приветствую Вас, ILYA D.!
Функция GetFullPathName.
Ответ отправлен: 15.11.2002, 13:56
Отправитель: Bob Johnson
Отвечает Dark_Lord
Добрый день, ILYA D.!
GetCurrentDirectory
Ответ отправлен: 14.11.2002, 18:36
Отправитель: Dark_Lord
Отвечает Broken Sword
Приветствую Вас, ILYA D.!
Недавно вопрос уже звучал...
mov ax,1203h
int 2Fh ; get DOS data-segment
mov ax,ds
lds si,ds:[bp-1Ah] ; ds:si – full path to running program
Ответ отправлен: 14.11.2002, 20:26
Отправитель: Broken Sword
Отвечает Sensey
Доброе время суток, ILYA D.!
TechHelp читал?
См Приложение(это все для 21 инта)
Приложение:
Ответ отправлен: 15.11.2002, 11:20
Отправитель: Sensey
Отвечает St
Привет, ILYA D.!
в начале программы GetCurrentDirectory (никагого имени там нет) + имя файла
St
Ответ отправлен: 14.11.2002, 17:21
Отправитель: St
Отвечает Eugene
Добрый день, ILYA D.!
Не понимаю, зачем так мутить? Просто указывай имена файлов без пути. По умолчанию файлы ищутся в той дире, из которой запущен экзешник.
Ответ отправлен: 14.11.2002, 17:35
Отправитель: Eugene
Отвечает Остапенко александр
Доброе время суток, ILYA D.!
проще ничего нет
Ответ отправлен: 15.11.2002, 07:49
Отправитель: Остапенко александр
Форма отправки вопроса |
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.
© 2002 Команда RusFAQ.ru.
Вопрос и дополнение |
Ваш вопрос:
Приложение (если необходимо):
Получить ответов:
Выбор рассылки |
Программисту Assembler (42) C / C++ (29) Perl (8) Delphi (13) Pascal (21) Basic / VBA (11) Java / JavaScript (13) PHP (11) MySQL / MSSQL (9) |
Пользователю Windows 95/98/Me (31) Windows NT/2000/XP (21) "Железо" (28) Поиск информации (17) |
Администратору Windows NT/2000/XP (11) Linux / Unix (16) |
Юристу Гражданское право (9) Семейное право (3) Трудовое право (4) КоАП (3) |
Отправить вопрос всем экспертам выбранной рассылки.
© 2002 Россия, Москва. Авторское право: RusFAQ.ru |
http://subscribe.ru/
E-mail: ask@subscribe.ru |
Отписаться
Убрать рекламу |
В избранное | ||