Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: программирование на языке Assembler


Информационный Канал Subscribe.Ru

RusFAQ.ru: программирование на языке Assembler

Выпуск № 289
от 13.06.2002, 02:40

Администратор:
Имя: Калашников О.А.
URL: Информационный ресурс
ICQ: 68951340
Россия, Москва
О рассылке:
Задано вопросов: 421
Отправлено ответов: 1093
Активность: 259.6 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе]


 Список экспертов, ответы которых опубликованы в данном выпуске

Zloy
Статус: Доверительный
Общий рейтинг: 105.18
[Подробней >>]
v4D
Статус: Опытный
Общий рейтинг: 112.96
[Подробней >>]
igorash
Статус: Опытный
Общий рейтинг: 134.1
[Подробней >>]
 
Alex
Статус: Доверительный
Общий рейтинг: 108.07
[Подробней >>]
Артём Шегеда
Статус: Профессиональный
Общий рейтинг: 130.33
URL: Пристанище неодинокого программиста
[Подробней >>]
Beeblebrox
Статус: Опытный
Общий рейтинг: 128.81
URL: Beeblebrox / TMA HomePage
[Подробней >>]
 
Kalashnikoff
Статус: Профессиональный
Общий рейтинг: 101.83
URL: Информационный ресурс
[Подробней >>]
Тorax
Статус: Доверительный
Общий рейтинг: 114.82
[Подробней >>]
DiGiT
Статус: Профессиональный
Общий рейтинг: 144.61
[Подробней >>]
 
kostik
Статус: Профессиональный
Общий рейтинг: 120.14
URL: Все о программистах и для программистов
Телефон: (4212)393-276
[Подробней >>]
baldr
Статус: Профессиональный
Общий рейтинг: 124.02
URL: Сайт об ОС DOS. Всем, кто любит эту ОС!
[Подробней >>]
AnSim
Статус: Доверительный
Общий рейтинг: 114.68
[Подробней >>]
 
Gibbel
Статус: Доверительный
Общий рейтинг: 109.85
[Подробней >>]
Dark_Lord
Статус: Опытный
Общий рейтинг: 118.47
Телефон: 36 30 3862503
[Подробней >>]
masquer
Статус: Профессиональный
Общий рейтинг: 160.86
[Подробней >>]
 
Guess Who
Статус: Начальный
Общий рейтинг: 102.43
[Подробней >>]
Broken Sword
Статус: Профессиональный
Общий рейтинг: 151.51
[Подробней >>]
Vint by Shz
Статус: Доверительный
Общий рейтинг: 117.36
[Подробней >>]


 Краткий перечень вопросов

Вопрос № 363. Здраствуйте надеюсь увас все идет в лад.У меня такой вопрос я хочу связаться с другим компом через м... (ответов: 4)
Вопрос № 364. Артём Я пробую скомпилировать то что ти мне прислал но не получается компилятор находит кучу ошибок... (ответов: 1)
Вопрос № 365. Задача: Определить, есть ли в буфере клавы символ и если есть, вывести на экран с освобождением буфе... (ответов: 6)
Вопрос № 366. Уважаемые эксперты, не подскажете алгоритм вывода на экран короткого вещественного числа.... (ответов: 2)
Вопрос № 367. Уважаемые эксперты,подскажите,где можно скачать все команды для работы с bat-файлами. Заранее благод... (ответов: 4)
Вопрос № 368. Уважаемые эксперты,смешной вопрос (но не для меня), CreateAcceleratorTable требует указатель на масс... (ответов: 4)
Вопрос № 369. Уважаемые эксперты,нужно программно сархивировать с десяток файлов в конце работы проги(WinExec(“rar... (ответов: 2)
Вопрос № 370. Доброе время суток эксперты, наверно глупый вопрос задам, сам не думал, что так будет: ниже приведён... (ответов: 5)
Вопрос № 371. Здравствуйте,уважаемые товарищи эксперты! На свой последний вопрос я получил так много ответов что ... (ответов: 1)
Вопрос № 372. Черт побери, почему некоторые ответы не отправляются? Пробую раз, нажимаю "подробнее" - ... (ответов: 2)
Вопрос № 373. Приветствую всех! Народ, хватит грустить! Предлагаю устроить что-то вроде тайм-брейка. Принимают... (ответов: 2)
Вопрос № 374. Здраствуйте коллеги :-))) Может кто подскажет как мне перехватывать нажатие клавиши "turbo"... (ответов: 3)

Вопросов: 12, ответов: 36


 Вопрос № 363

Здраствуйте надеюсь увас все идет в лад.У меня такой вопрос я хочу связаться с другим компом через модем я знаю его айпишник но незнаю какой программой связаться ею подскажите как я могу это сделать или дайте ссылку где я могу скачать такую программу заранее спасибо.



Вопрос отправлен: 08.06.2002, 13:43
Отправитель: mirik

[Следующий вопрос >>] [Список вопросов]

Отвечает Zloy

Добрый день, mirik!
Связаться можно с помощью любой звонилки(гипер-терминал, стандартная и много др...)


Ответ отправлен: 09.06.2002, 11:39
Отправитель: Zloy


Отвечает v4D

Доброе время суток, mirik!
Можно проще: например, через маздайный HyperTerminal или Dial-Up Server (один ставит сервер, а другой джоинится).
Ну еще можно через ftp server.

Ответ отправлен: 08.06.2002, 23:32
Отправитель: v4D


Отвечает igorash

Приветствую Вас, mirik!
При чем здесь IP при связи по модему??? IP тебе нужен только для связи через уже настроенное соединение по сети (модем, локалка, все что угодно). А связь по модему в 2 словах. Один ставит модем в режим снятия трубки (желательно после 1 гудка), а другой ему звонит модемом, вот и все. Есть прога замечательная, гипертерминал, так вот оба ее запускаете, один ставит че-то типа "ждать звонка", а другой мутит соединение и указывает тот номер, а потом звонит. А если ты про айпишник все же, т.е. про связь по сети (например через инет), то если у него стоит и используется модемом "клиент для сети микрософт", и "служба доступа к файлам и принтерам" (что очень не рекомендуется в инете), просто пришешь в проводнике \<имя диска зашаренного> и все.


Ответ отправлен: 10.06.2002, 23:35
Отправитель: igorash


Отвечает Alex

Добрый день, mirik!
Связаться можно стандартным дозвонщиком, а подсоединиться при помощи любого браузера.

Ответ отправлен: 09.06.2002, 02:28
Отправитель: Alex


 Вопрос № 364

Артём
Я пробую скомпилировать то что ти мне
прислал но не получается компилятор находит кучу ошибок
по пробовал посвоему он нашел один warning но всё ровно
не выходит посмотри что не так !!!


Приложение:


Вопрос отправлен: 08.06.2002, 14:13
Отправитель: Stas

[Следующий вопрос >>] [Список вопросов]

Отвечает Артём Шегеда

Приветствую Вас, Stas!
Странно, у меня этот код нормально компилируется, правда после того, как я поудалял пробелы после @@. Кроме того, макросы обычно объявляют в начале модуля - до того как они будут использованы. Сами по себе они не генерируют никакого кода. Код возникает только тогда, когда идёт обращение к макросу. "ShiftedOneList 0" гарантированно выдаст ошибку - так в макросе заложено.
И ещё: я в начале модуля указал, как компилировать и как линковать. Это желательные опции для общего случая.
У меня возникает подозрение, что я написал не то что от меня ожидалось. Хотелось бы уточнить, что вопрошающий подразумевал под фразой "Мне нужно построить макро ..."?


Ответ отправлен: 08.06.2002, 17:02
Отправитель: Артём Шегеда


 Вопрос № 365

Задача: Определить, есть ли в буфере клавы символ и если есть, вывести на экран с освобождением буфера.
mov ah,01
int 16h
jz Next ;символа нет
mov dl,al
mov ah,02
int 21h ;символ есть, выводим
... ;но как освободить буфер?
jmp Next



Вопрос отправлен: 08.06.2002, 15:29
Отправитель: igorr (flat12@pop.redcom.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает igorash

Добрый день, igorr!
Сравнять адреса начала и конца буфера.


Ответ отправлен: 10.06.2002, 23:35
Отправитель: igorash


Отвечает Beeblebrox

Здравствуйте, igorr!
mov ah,0
int 16h


Ответ отправлен: 10.06.2002, 09:49
Отправитель: Beeblebrox


Отвечает Артём Шегеда

Добрый день, igorr!
fn 0 int 16 тебе поможет.
А вообще, скачай TechHelp - там эта тема даже с примером идёт.

Ответ отправлен: 08.06.2002, 16:49
Отправитель: Артём Шегеда


Отвечает Kalashnikoff

Здравствуйте, igorr!
В приложении.

Приложение:

Ответ отправлен: 08.06.2002, 17:42
Отправитель: Kalashnikoff


Отвечает Тorax

Добрый день, igorr!
Выслал на мыло.


Ответ отправлен: 08.06.2002, 20:02
Отправитель: Тorax


Отвечает v4D

Здравствуйте, igorr!
mov ah, 0ch
int 21h

Ответ отправлен: 08.06.2002, 23:44
Отправитель: v4D


 Вопрос № 366

Уважаемые эксперты, не подскажете алгоритм вывода на экран короткого вещественного числа.



Вопрос отправлен: 08.06.2002, 19:24
Отправитель: Oleg (spreegan@newmail.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает Артём Шегеда

Здравствуйте, Oleg!
В этом вопросе я точного ответа не дам, но на твой адрес я выслал картинку из доки на Pentium. Может быть, тебе это поможет...

Ответ отправлен: 10.06.2002, 22:31
Отправитель: Артём Шегеда


Отвечает DiGiT

Приветствую Вас, Oleg!
Выводи саму разрыдную сетку а потом и показатель степени.

Ответ отправлен: 10.06.2002, 05:13
Отправитель: DiGiT


 Вопрос № 367

Уважаемые эксперты,подскажите,где можно скачать все команды для работы с bat-файлами.
Заранее благодарен, Leo



Вопрос отправлен: 08.06.2002, 20:34
Отправитель: Leo (a.leo@37.com)

[Следующий вопрос >>] [Список вопросов]

Отвечает kostik

Доброе время суток, Leo!
Загляни на сайт Артема Шегеды. Там у него был список команд. Ссылка -
http://www.shegeda.chat.ru/


Ответ отправлен: 09.06.2002, 13:24
Отправитель: kostik


Отвечает baldr

Доброе время суток, Leo!
Про .bat-файлы ты найдешь у меня на сайте... Старался как мог...
http://www.dospage.by.ru
Предупреждаю сразу: там в разделе утилит ничего нету - некогда все закачать... Сорри.


Ответ отправлен: 09.06.2002, 22:48
Отправитель: baldr


Отвечает Тorax

Доброе время суток, Leo!
У меня есть где-то выпуск рассылки где немного про это говорили. Скоро вышлю.
Torax


Ответ отправлен: 08.06.2002, 23:28
Отправитель: Тorax


Отвечает AnSim

Здравствуйте, Leo!
Самое простое - почитать все текстовые файлы, которые валяются в каталоге виндов
а также скопируй help.com, Qbasic.exe, help.hlp из MsDOs 6.22 (могу выслать мылом)

Ответ отправлен: 10.06.2002, 12:55
Отправитель: AnSim


 Вопрос № 368

Уважаемые эксперты,смешной вопрос (но не для меня), CreateAcceleratorTable требует указатель на массив структур типа ACCEL.Как объявить этот массив и передать на него указатель? Пример:
ACCEL accel_1;
accel_1.cmd = (WORD) IDM_EXIT;
accel_1.key = (WORD)"x";
accel_1.fVirt = (WORD)FALT;
ACCEL accel_2;
accel_2.cmd = (WORD) IDM_FILE;
accel_2.key = (WORD)"f";
accel_2.fVirt = (WORD)FALT;
CreateAcceleratorTable(?,2);
Заранее благодарен, Leo



Вопрос отправлен: 08.06.2002, 20:34
Отправитель: Leo (a.leo@37.com)

[Следующий вопрос >>] [Список вопросов]

Отвечает Gibbel

Добрый день, Leo!
В MSDN (Platform SDK) есть очень хороший примерчик: Creating User-Editable Accelerators


Ответ отправлен: 10.06.2002, 10:49
Отправитель: Gibbel


Отвечает Артём Шегеда

Здравствуйте, Leo!
Во-первых, не "x" и "f", а 'x' и 'f'.
Во-вторых, в документации ясно сказано, что нужно передавать массив.
В-третьих, это вопрос по языку Си.
Но, в общем, попробуй так:

Приложение:

Ответ отправлен: 10.06.2002, 13:53
Отправитель: Артём Шегеда


Отвечает Dark_Lord

Добрый день, Leo!
Сделай файл ресурсов (.res) и не мучайся!


Ответ отправлен: 09.06.2002, 17:06
Отправитель: Dark_Lord


Отвечает masquer

Доброе время суток, Leo!
Просто последовательно располагай эти три элемента в памяти, а функции потом передай количество элементов.

Ответ отправлен: 09.06.2002, 00:14
Отправитель: masquer


 Вопрос № 369

Уважаемые эксперты,нужно программно сархивировать с десяток файлов в конце работы проги(WinExec(“rar ...”).Существует ли возможность:
1. Отмечать время и имя архивируемого файла (скажем для вывода инфы о процессе архивации этого файла в ДО с Progress Bar’oм)?
2. Определить окончание работы WinExec с тем,чтобы вывести инфу об успешном/неудачном архивировании?
Заранее благодарен, Leo



Вопрос отправлен: 08.06.2002, 20:35
Отправитель: Leo (a.leo@37.com)

[Следующий вопрос >>] [Список вопросов]

Отвечает Артём Шегеда

Здравствуйте, Leo!
CreateProcess тебе поможет. Принципы запуска процесса с последующим перехватом ввода/вывода расписаны в Win32 SDK, раздел "Creating a Child Process with Redirected Input and Output". Для чего это нужно? - Дело в том, что RAR во время работы с архивами выводит в стандартный файл вывода последовательность вида "ИмяФайла,КучаПробелов,ПроцентВыполнения,ВозвратКурсора,ПроцентВыполнения,ВозвратКурсора,...,ВозвратКаретки", а дальше по-новой. С принятой от RAR информацией можешь делать, что хочешь.
Для получения информации о том, как отработала программа, используй функцию GetExitCodeProcess.
Тормознуть программу можно попытаться, отослав в поток ввода процесса последовательность "^C^C". По-моему, RAR должен понять её с полуслова.

Ответ отправлен: 10.06.2002, 13:08
Отправитель: Артём Шегеда


Отвечает masquer

Добрый день, Leo!
WinExec устаревшая функция, МСДН рекомендует CreateProcess.
А вот и первое и второе - наврядли, по крайней мере, тебе проще будет найти бесплатную библиотеку для зип и ее использовать.

Ответ отправлен: 09.06.2002, 00:03
Отправитель: masquer


 Вопрос № 370

Доброе время суток эксперты,
наверно глупый вопрос задам, сам не думал, что так будет: ниже приведённая прога (пример конечно)- не работает - почему ???
Помогите пожалуйста.
Заранее благодарен,
Michael.
P.S. Почему tasm пишет "forward reference needs override" ?


Приложение:


Вопрос отправлен: 08.06.2002, 21:07
Отправитель: Michael (michaelgul@hotmail.com)

[Следующий вопрос >>] [Список вопросов]

Отвечает Gibbel

Здравствуйте, Michael!
byte ptr [line]

Ответ отправлен: 10.06.2002, 10:52
Отправитель: Gibbel


Отвечает igorash

Добрый день, Michael!
Поставь чтобы за 2 прохода компилилось, ссылка на метку (переменную, все равно) используется раньше чем сама метка объявляется


Ответ отправлен: 10.06.2002, 23:36
Отправитель: igorash


Отвечает Beeblebrox

Добрый день, Michael!
А как оно, по твоему, должно работать?
INT 16 - KEYBOARD - GET KEYBOARD FUNCTIONALITY
AH = 09h
Return: AL = supported keyboard functions (see #0480)
AH destroyed by many BIOSes
Notes: this function is only available if bit 6 of the second feature byte
returned by INT 15/AH=C0h is set (see #0407)
reportedly, the Award Modular BIOS v4.50G returns the keyboard function
flags in AH instead of AL, and provides this function even though
its availability is not indicated by INT 15/AH=C0h
SeeAlso: AH=03h,AH=0Ah,AH=10h,AH=11h,AH=12h,AH=20h,AH=21h,AH=22h,INT 15/AH=C0h
Bitfields for supported keyboard functions:
Bit(s) Description (Table 0480)
7 reserved
6 INT 16/AH=20h-22h supported (122-key keyboard support)
5 INT 16/AH=10h-12h supported (enhanced keyboard support)
4 INT 16/AH=0Ah supported
3 INT 16/AX=0306h supported
2 INT 16/AX=0305h supported
1 INT 16/AX=0304h supported
0 INT 16/AX=0300h supported
Перед end start вставь строку:
prg ends
tasmу ставь 9 проходов (опция /m9), тогда все будет в порядке

Ответ отправлен: 10.06.2002, 10:51
Отправитель: Beeblebrox


Отвечает Dark_Lord

Добрый день, Michael!
А у int 16h есть 09h!?

Ответ отправлен: 09.06.2002, 17:08
Отправитель: Dark_Lord


Отвечает Guess Who

Здравствуйте, Michael!
Лечится двумя способами, смотрите приложение. И не забывайте писать "[имя сегмента] ends" - в конце программы. Кстати, в первых выпусках основной рассылки было упоминание об этой ошибке.

Приложение:

Ответ отправлен: 09.06.2002, 00:32
Отправитель: Guess Who


 Вопрос № 371

Здравствуйте,уважаемые товарищи эксперты! На свой последний
вопрос я получил так много ответов что прямо пухну от переизбытка информации и чахну от нетерпения желая ее применить... :) Если серьезно,как обрабатывать исключения в режиме ядра OS WinNT и выше.Нет,не в драйвере а именно в ядре,будь то plug-in к SoftIce или другая штука,но она будет работать в 0-ом кольце защиты и в случае возникновения ошибки не должна привести к полному краху.[впрочем,это так же не лишнее и при ее отладке :] Как я понимаю,дело тут с KeTrapFrame и тд.Ввиду отсутствия у меня материала и невозможности найти его в сети я и пишу сюда...



Вопрос отправлен: 08.06.2002, 21:12
Отправитель: Death (mic@online.sinor.ru)

[Следующий вопрос >>] [Список вопросов]

Отвечает masquer

Здравствуйте, Death!
При исключении в ядре НТ вызывается KiDispatchException. Подробнее смотри классную книгу Windows NT Native API. Там и описание, и псевдокод этой функции есть.

Ответ отправлен: 08.06.2002, 23:52
Отправитель: masquer


 Вопрос № 372

Черт побери, почему некоторые ответы не отправляются?
Пробую раз, нажимаю "подробнее" - и пусто! Это только иногда, а обычно там ответы есть...



Вопрос отправлен: 08.06.2002, 22:37
Отправитель: baldr (baldr@pisem.net)

[Следующий вопрос >>] [Список вопросов]

Отвечает Kalashnikoff

Здравствуйте, baldr!
Test....

Приложение:

Ответ отправлен: 09.06.2002, 12:59
Отправитель: Kalashnikoff


Отвечает Broken Sword

Доброе время суток, baldr!
Когда в приложении много (хотя и не так уж) всячины

Ответ отправлен: 08.06.2002, 23:26
Отправитель: Broken Sword


 Вопрос № 373

Приветствую всех!
Народ, хватит грустить! Предлагаю устроить что-то вроде тайм-брейка.
Принимаются ответы околокомпьютерными анекдотами... :)))
Мой любимый анекдот: "pkunzip.zip".



Вопрос отправлен: 08.06.2002, 22:38
Отправитель: baldr (baldr@pisem.net)

[Следующий вопрос >>] [Список вопросов]

Отвечает Gibbel

Доброе время суток, baldr!
http://www.kosha.saits.lv/PAGES/humour.htm


Ответ отправлен: 10.06.2002, 10:58
Отправитель: Gibbel


Отвечает Vint by Shz

Доброе время суток, baldr!
Вообще-то ето -реальная идея. Может разбавить рассылку анехдотами,шутками, да просто умными мыслями???
Эксперты-проголосуем????


Ответ отправлен: 09.06.2002, 21:37
Отправитель: Vint by Shz


 Вопрос № 374

Здраствуйте коллеги :-)))
Может кто подскажет как мне перехватывать нажатие клавиши "turbo" в Вин2000 (в крайнем случае Вин98).
Я не прошу исходник, так какая-то информация может у кого-то есть. И еще как перейти в спящий режим програмно под теми же ОСками. Спасибо
Torax



Вопрос отправлен: 08.06.2002, 23:51
Отправитель: Torax (Torax@Dotes.west.energy.gov.ua)

[Следующий вопрос >>] [Список вопросов]

Отвечает igorash

Доброе время суток, Torax!
Какую, ту, что на корпусе в АТ-корпусах или ту, которая на клавах блатных? А по моему обе никак. Они вроде внутри клавы обрабатываются. Спящий режим - поищи функции длл-ок питания.


Ответ отправлен: 10.06.2002, 23:36
Отправитель: igorash


Отвечает masquer

Доброе время суток, Torax!
Перехватывать - хуком для клавиатуры (для любой винды)
Спать - SetSystemPowerState
:)

Ответ отправлен: 09.06.2002, 00:21
Отправитель: masquer


Отвечает baldr

Добрый день, Torax!
Клавиша turbo не перехватывается, ибо не существует ее скан-кода. Она обрабатывается
IMHO сразу в клаве. То есть, жмешь, например, turbo-F11 и клава запирается сама... Из-под
Винды и вообще программно ты не отопрешь... Отпирается только Reset'ом.
А спящий режим ты можешь запустить, только если все работающие проги это поддерживают.
Запускается то ли через user.dll, то ли через еще что-то...


Ответ отправлен: 10.06.2002, 00:01
Отправитель: baldr



Форма отправки вопроса

Внимание!
Форма может работать некорректно в почтовых программах "Microsoft Outlook" и "Microsoft Outlook Express". В программе The Bat! подобные формы не работают вообще!
После нажатия на кнопку "Отправить", будет открыто второе окно. Заметьте, что в некоторых браузерах могут стоять запреты на открытие других окон, а также "чрезмерное" кэширование данных, при этом факт отправки Вашего вопроса стоит под сомнением.
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

© 2002 Команда RusFAQ.ru.

 Персональные данные

Ваше имя:

Ваш e-mail:

Опубликовать мой e-mail в рассылке


 Вопрос и дополнение

Ваш вопрос:


Приложение (если необходимо):


Получить ответов:


 Выбор рассылки

Программисту
Assembler (51)
C / C++ (30)
Perl (9)
Delphi (14)
Pascal (26)
Basic / VBA (15)
Java / JavaScript (6)
PHP (7)
MySQL / MSSQL (6)
Пользователю
Windows 95/98/Me (48)
Windows NT/2000/XP (34)
"Железо" (40)
Поиск информации (20)
Администратору
Windows NT/2000/XP (15)
Linux / Unix (9)
Юристу
Гражданское право (11)
Семейное право (5)
Трудовое право (6)
КоАП (3)

Отправить вопрос всем экспертам выбранной рассылки.




be number one Яндекс цитирования

© 2002 Россия, Москва. Авторское право: RusFAQ.ru


http://subscribe.ru/
E-mail: ask@subscribe.ru
Отписаться
Убрать рекламу

В избранное