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

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


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

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

Выпуск № 506
от 17.03.2003, 20:50

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


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

raf
Статус: Начальный
Общий рейтинг: 107.5
[Подробней >>]
Maverick
Статус: Профессиональный
Общий рейтинг: 137.45
URL: Задачи по ассемблеру
Телефон: 89039415024 (BeeLine GSM)
[Подробней >>]
Joy
Статус: Опытный
Общий рейтинг: 131.08
[Подробней >>]
 
Ayl
Статус: Профессиональный
Общий рейтинг: 118.4
[Подробней >>]
Kostyan
Статус: Доверительный
Общий рейтинг: 113.57
[Подробней >>]
DiGiT[old]
Статус: Профессиональный
Общий рейтинг: 110.75
[Подробней >>]
 
Bob Johnson
Статус: Профессиональный
Общий рейтинг: 150.42
URL: Программирование
[Подробней >>]
masquer
Статус: Профессиональный
Общий рейтинг: 143.72
[Подробней >>]
akul
Статус: Доверительный
Общий рейтинг: 118.22
[Подробней >>]
 
Gibbel
Статус: Профессиональный
Общий рейтинг: 108.06
URL: Страничка обо мне и моих друзьях
Телефон: +7 902 168 02 65
[Подробней >>]
vitya
Статус: Профессиональный
Общий рейтинг: 108.01
[Подробней >>]
Александр
Статус: Доверительный
Общий рейтинг: 104.45
[Подробней >>]
 
PoEt
Статус: Начальный
Общий рейтинг: 109.48
[Подробней >>]
Broken Sword
Статус: Профессиональный
Общий рейтинг: 125.11
URL: моя рассылка по Protected Mode
[Подробней >>]
baldr
Статус: Профессиональный
Общий рейтинг: 113.57
URL: Сайт об ОС DOS. Всем, кто любит эту ОС!
[Подробней >>]


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

Вопрос № 2758. Привет народ. Давно я здеся не был ну да ладно. Я все не как не могу вывести пиксель в заданную точк... (ответов: 5)
Вопрос № 2759. Добрый день. Вопрос такой. Может есть у кого какие доки по синхронизации процессов, семафорам. Или п... (ответов: 3)
Вопрос № 2760. Уважаемые эксперты. Функция win32api GetVolumeInformationA. Устанавливаю первый параметр null и чита... (ответов: 6)
Вопрос № 2761. Приветствую вас! Кому не сложно, киньте в меня файлами .inc, с описаниями сообщений, констант и функ... (ответов: 3)
Вопрос № 2762. Привет всем... Это снова я. Напомню, вопрос был N2742 про железо и ЗР... :) Ну что вы в самом деле... (ответов: 4)
Вопрос № 2763. Каким образом можно программировать на Ноутбуке? В смыслето того, так же само как на персональном ко... (ответов: 5)
Вопрос № 2764. Я наверное действительно задал вопрос пространственно. У меня есть необходимость купить компьютер, н... (ответов: 6)
Вопрос № 2765. Доброе время суток! К вопросу № 2750: MCI - не выход! Мне надо работать напрямую с аппаратурой. Т.е.... (ответов: 1)

Вопросов: 8, ответов: 33


 Вопрос № 2758

Привет народ. Давно я здеся не был ну да ладно.
Я все не как не могу вывести пиксель в заданную точку экрана , помогите плиз,
только по подробней, и еще как вывести текст в нужное мне место,
а то mov ah,9 int 21h выводит в начало а мне так не надо.
Зарание спасибо за помощь.



Вопрос отправлен: 13.03.2003, 05:34
Отправитель: Cas

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

Отвечает raf

Здравствуйте, Cas !
Ну насчет вывода пикселя нужно использывать:
INT 10h, AH = 0ch
Al = значения цвета! CX,DX = строка, колонка, BH = номер страницы.
Насчет текста нужно использывать:
INT 10h, ah = 13h AL - (код формата), BH = страница дисплея, BL = атрибут, CX - длинна строки, DX - позиция курсора для записи строки, ES:BP - указатель строки.
Вот я прогу наваял посмотри.
Если непонятно пиши!



Приложение:

Ответ отправлен: 14.03.2003, 12:53
Отправитель: raf


Отвечает Maverick

Здравствуйте, Cas !
Эта функция выводит строку в текущ. позицию курсора.
Гляди ф-ии установки позиции курсора.


Ответ отправлен: 13.03.2003, 06:09
Отправитель: Maverick


Отвечает Joy

Доброе время суток, Cas !
Чтобы поподробней ответить, тебе нужно было поподробней задать вопрос!
Ответ: смотри описание int 10h (это прерывание биоса, оно и видеорежимы устанавливает, и точки выводит, и курсор ставит в нужное место)
P.S. Какой вопрос, такой и ответ.

Ответ отправлен: 13.03.2003, 07:33
Отправитель: Joy


Отвечает Ayl

Приветствую Вас, Cas !
Классный вопрос! "Не могу вывести, помогите!" Тебе что, рассказывать полный курс компьютерной графики? Для этого, вообще-то, существуют книжки. Да и в инете информации полно. Напиши в Яндексе "Программирование графики", "Программирование VGA" - получишь несколько :-) ссылок. Почитай - полезно.
Насчет вывода - функция 9 выводит текст в позицию курсора. Установи курсор в нужное место с помощью функции 2 прерывания 10h - и выводи потом, сколько влезет. Кроме этого, для вывода текста также можешь использовать функции 9, 0ah и 0eh прерывания 10h (посимвольный вывод).
Правда, наиболее быстрый способ отображения текста - прямой вывод в видеопамять.

Ответ отправлен: 13.03.2003, 13:16
Отправитель: Ayl


Отвечает Kostyan

Доброе время суток, Cas !
Пиксел проще всего вывести на экран при помощи ф-и 0Dh прерывания 10h.
mov ax,0013h
int 10h ;Установить графический видеорежим
mov ah,0Ch ;функция
mov al,2 ;цвет
mov bh,0 ;страница
mov cx,150 ;столбец
mov dx,100 ;строка
int 10h ;вывести точку
Сложнее, но быстрее - это скопировать напрямую в видеопамять.
mov ax,0013h
int 10h ;Установить графический видеорежим
mov ax,0A000h
mov es,ax
mov byte ptr es:[0000h],3 ;Вывести точку
Что бы вывести текст в поизвольную позицию - используй ф-ю 13h прерывания 10h


Ответ отправлен: 13.03.2003, 18:17
Отправитель: Kostyan


 Вопрос № 2759

Добрый день.
Вопрос такой. Может есть у кого какие доки по синхронизации процессов, семафорам. Или путёвые линки. Поисковики всякую лажу выдают, ничего хорошего.
Заранее благодарен.



Вопрос отправлен: 13.03.2003, 07:56
Отправитель: Odin (odin80@xakep.ru)

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

Отвечает DiGiT[old]

Приветствую Вас, Odin!
Есть доки. Правда они все в книгах и часть дома на компе.
А вообще что конкретно нужно ?? Могу привести пример книг где это прилично описывается: R.Stevens "UNIX:IPC", W.Stollings "Операционные системы"
Если на уровне как ими пользоваться, то MSDN под винды хорошо подходит, а под никсы man :))

Ответ отправлен: 14.03.2003, 11:21
Отправитель: DiGiT[old]


Отвечает Bob Johnson

Добрый день, Odin!
Самым простым способом синхронизации является CRITICAL_SECTION. Ей в один конкретный момент времени может обладать только один поток одного процесса. Под словом "обладать" на самом деле ничего не подразумевается - ты сам ассоциируешь с какой-либо критической секцией свою (свои) переменную, которую собираешься использовать в разных потоках, и когда ты получаешь доступ к секции, только тогда ты обращаешься к переменной. Для получения доступа вызывается EnterCriticalSection, для окончания - LeaveCriticalSection. Основной недостаток КС - то, что если тот поток, который обладает ей в данные момент времени попробует получить доступ к ней еще раз, не отпустив, то он повиснет.
От этого недостатка свободен мутекс, который, в принципе, то же самое, что и КС, но его можно "получать" многократно (что позволяет использовать его в рекурсивной функции). Только следует помнить, что если ты его "взял" 5 раз, то и "отпустить" должен тоже 5 раз.
Далее идет семафор, который предназначен для предоставления доступа не одному потоку, а определенному количеству сразу (но не более того). Количество задается пользователем.
Еще есть event - событие, обычно используется в Wait Functions для того, чтобы один поток мог передать другому, что "его время пришло".
Ты можешь все это прочитать в MSDN (если все ок с английским) или поискать на wasm.ru.


Ответ отправлен: 14.03.2003, 14:58
Отправитель: Bob Johnson


Отвечает masquer

Здравствуйте, Odin!
Рихтер тебе поможет, точнее, его книга

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


 Вопрос № 2760

Уважаемые эксперты.
Функция win32api GetVolumeInformationA.
Устанавливаю первый параметр null и читаю все данные без проблем.
Но это текущий том. Не могу правильно сформировать строку для первого параметра.
Я так понимаю, это дожна быть строка оканчивающаяся нулем (чуть не написал: с нулем на конце). Пробовал и так и эдак, но наверно не понимаю какой-то принципиальной вещи.
Если кто-нибудь ответит, то хотелось бы с примером этого параметра.
Заранее благодарю, Сергей



Вопрос отправлен: 13.03.2003, 09:11
Отправитель: Сергей

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

Отвечает masquer

Доброе время суток, Сергей!
Я надеюсь, передается _указатель на строку_ или как?

Ответ отправлен: 14.03.2003, 13:02
Отправитель: masquer


Отвечает akul

Добрый день, Сергей!
учимся читать MSDN...
lpRootPathName
[in] Pointer to a string that contains the root directory of the volume to be described. If this parameter is NULL, the root of the current directory is used. A trailing backslash is required. For example, you would specify \MyServerMyShare as \MyServerMyShare, or the C drive as "C:".


Ответ отправлен: 13.03.2003, 09:37
Отправитель: akul


Отвечает Gibbel

Доброе время суток, Сергей!
lpRootPathName
[in] Pointer to a string that contains the root directory of the volume to be described. If this parameter is NULL, the root of the current directory is used. A trailing backslash is required. For example, you would specify \\MyServer\MyShare as \\MyServer\MyShare\, or the C drive as "C:\".


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


Отвечает vitya

Добрый день, Сергей!
Как написанно в MSDN должан быть такая строка "C:".
Скорее всего ты забываешь на конце.

Ответ отправлен: 13.03.2003, 12:35
Отправитель: vitya


Отвечает Александр

Добрый день, Сергей!
BOOL GetVolumeInformation(
LPCTSTR lpRootPathName,
LPTSTR lpVolumeNameBuffer,
DWORD nVolumeNameSize,
LPDWORD lpVolumeSerialNumber,
LPDWORD lpMaximumComponentLength,
LPDWORD lpFileSystemFlags,
LPTSTR lpFileSystemNameBuffer,
DWORD nFileSystemNameSize
);
Parameters
lpRootPathName
[in] Pointer to a string that contains the root directory of the volume to be described. If this parameter is NULL, the root of the current directory is used. A trailing backslash is required. For example, you would specify \MyServerMyShare as \MyServerMyShare, or the C drive as "C:".
Для тех кто не владеет языками поясняю, там где в названии присутствует префикс p - указатели. Используй указатель на строку и всё у тебя получится. Если нет MSDN просто используй поиск на www.microsoft.com

Ответ отправлен: 13.03.2003, 14:15
Отправитель: Александр


Отвечает Bob Johnson

Добрый день, Сергей!
Ну, в MSDN написано: or the C drive as "C:\", значит надо так:
RootPath db 'C:\', 0
...


Ответ отправлен: 14.03.2003, 14:59
Отправитель: Bob Johnson


 Вопрос № 2761

Приветствую вас! Кому не сложно, киньте в меня файлами .inc, с описаниями сообщений, констант и функций, а то на wasm.ru скачал пакет tasm32, .lib там полный и всеобъемлющий, а вот .inc недоделанный :( там внутри файла так и написано, что незакончен и chaos-like :)
И ещё маленький вопросик на засыпку :) как сделать, чтобы прога компилилась размером как есть, а не кратным 4Kb? Пользуюсь, как я уже сказал, tasm-ом. Спасибо!



Вопрос отправлен: 13.03.2003, 11:11
Отправитель: undying (undying@ezmail.ru)

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

Отвечает PoEt

Приветствую Вас, undying!
Кидаем в вас *.inc, как и просили!(на мыло)
Если чего не так, не обессудьте - нам хватает этих!
Хи - хи! :)

Ответ отправлен: 14.03.2003, 04:11
Отправитель: PoEt


Отвечает Joy

Приветствую Вас, undying!
Сегодня видел их на сайте Боба Джонсона http://www.bobjohnson.nm.ru/

Ответ отправлен: 13.03.2003, 14:58
Отправитель: Joy


Отвечает Bob Johnson

Приветствую Вас, undying!
1. См. на моей странице (bobjohnson.nm.ru)
2. Используй другой линкер. Например, если ты прилинковываешь к проге ресурсы борландовским линкером, то уже получить файл не кратный 4 к.
P.S. А чем тебе 4 к не устраивает, ведь обычно кластер именно такого размера (или больше)?


Ответ отправлен: 14.03.2003, 14:59
Отправитель: Bob Johnson


 Вопрос № 2762

Привет всем... Это снова я. Напомню, вопрос был N2742 про железо и ЗР... :)
Ну что вы в самом деле! Ну кто может про меня подумать, что Я ДОСовске игрушки могу под виндой запускать!? :(( Конечно же, чистый DOS, насколько это возможно у 98 винды!
И глюки, все-таки, связаны с видеокартой! Я вот, тут вспомнил, что в винде часто ВСЕ вешается без дальнейших реакций (и звуков) при 800x600xHiColor и нормально (вроде) работает (относительно! :) ) при 640x480x256цветов...
Ну, я понял, что ничего похожего никто не видел, так что попробуйте просто объяснить такие спецэффекты? :)
Я слышал уже всякие версии типа зависа после седьмого свопинга такой видюхи (?!)..
Впрочем, я уже решил что-нибудь сменить после зарплаты, так что потом расскажу кто был виноват... :)



Вопрос отправлен: 13.03.2003, 11:49
Отправитель: baldr (baldr@pisem.net)

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

Отвечает Broken Sword

Добрый день, baldr!
ну это и пню ясно что с видеокартой, встречались мне такие экземпляры глючные, именно при hi-color сначала экран шел точками белыми, потом все висло нахрен.
короче дело было знаешь в чем? в дровах!
свопинг до видеокарты никаким боком не относится, поэтому все это сказки Венского леса...
поэкспериментируй с дровами, поставь для 95 винды (старые нарой де нить), потом найди для 98, версии разные поподбирай - могу поспорить что все заработает.
она кстати AGP-шная?

Ответ отправлен: 13.03.2003, 12:02
Отправитель: Broken Sword


Отвечает Александр

Добрый день, baldr!
Ты не кипятись. Лучше убей менеджеры памяти вроде emm386, только himem оставь.
1. Если есть звук - отключи.
2. Проверь греется ли видюха. У меня например с такой же видеокартой проблем никаких, а у друга термопробой случился, виснет через 10 мин после включения питания. А в винде могут и дрова глючить... Мне вот пришлось i740 выкинуть - у друга работала как заводная, а после переезда ко мне при малейшей попытке подсунуть ей 3D-игру вылетала минут через 5 после запуска... Ещё если есть охота попробуй с разным сочетание модулей памяти. А лучше не мучайся и потрать 200-250$ на какую-нибудь систему на атлоне(без HDD и монитора).

Ответ отправлен: 13.03.2003, 14:31
Отправитель: Александр


Отвечает Joy

Здравствуйте, baldr!
Отвечая на твой предъидущий вопрос, я просил тебя написать поподробней, что происходит. Видел я карточки, у которых не корректно работает память/процессор. Поэтому, без дополнительной информации сказать, что проблема именно в видюхе нельзя. Бывают проблемы (из-за которых такие синдромы) с материнской платой, с БИОСом и т.д. Возможно, кстати, что проблема с оперативной памятью, т.к. при больших разрешениях видюха берет на себя часть оперативки. Ты говоришь, что запускаешь из чистого ДОСа, а ты попробуй под выньдой. Ты не ответил на вопрос о том, работают ли (именно эти) игрушки на другом компе. Если да, то поменяй видюхи и запусти. Сразу будет видно видюха виновата или ....

Ответ отправлен: 13.03.2003, 14:58
Отправитель: Joy


Отвечает Bob Johnson

Добрый день, baldr!
> Впрочем, я уже решил что-нибудь сменить после зарплаты
И это правильно... Сейчас видео карты стоят совсем недорого, так что меняй. Возьми себе что-нибудь вроде Ge Force, только смотри, что мощные (по потреблению питания) карты могут заглючить, если им не хватит питания (что зависит от платы). Так что если зарплата большая, то можешь еще и проц с мамой поменять.


Ответ отправлен: 14.03.2003, 14:59
Отправитель: Bob Johnson


 Вопрос № 2763

Каким образом можно программировать на Ноутбуке? В смыслето того, так же само как на персональном компьютере (те же адреса в памяти, например для видео, символьных таблиц и т.д.), или есть какие-то отличия.
Заранее благодарен.



Вопрос отправлен: 13.03.2003, 11:55
Отправитель: Mykola (martinov_nickolay@pisem.net)

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

Отвечает Bob Johnson

Добрый день, Mykola!
Под досом - да, ведь они (обычно) совместимы с VGA.
Под виндой - тут уже вступают в работу драйверы...


Ответ отправлен: 14.03.2003, 19:11
Отправитель: Bob Johnson


Отвечает Gibbel

Доброе время суток, Mykola!
Вообще, создатели ноутбуков не очень то любят придерживаться стандартов, принятых для обычных PC, но, в большинстве случаев, нет разницы, на чем ты работаешь...

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


Отвечает akul

Здравствуйте, Mykola!
Если в рамках VGA стандарта то никакой разницы, а дальше по документации к конкретному видеочипу.

Ответ отправлен: 13.03.2003, 12:13
Отправитель: akul


Отвечает Maverick

Приветствую Вас, Mykola!
Ну дак естественно, программы же с настольного компа на нем работают :)


Ответ отправлен: 13.03.2003, 12:34
Отправитель: Maverick


Отвечает Joy

Приветствую Вас, Mykola!
Немного не корректный вопрос. Отличия есть. Но на программирование видеоадаптера они не скажуться. Если ты программируешь на PC под SVGA карточку с использованием VESA и попробуешь эту прогу запустит на буке с карточкой EGA то у тебя будут проблемы. И есстественно наоборот тоже работать ничего не будет. Если ты писАл под VGA на буке и принес прогу на PC, где стоит VGA карта, то она будет работать.
P.S. ДАМЫ И ГОСПОДА! ЗАДАВАЙТЕ ВОПРОСЫ ПОЖАЛУЙСТА ПО КОРРЕКТНЕЙ (ИЛИ БУДИТЕ ЧИТАТЬ ТАКИЕ ЖЕ ДУРАЦКИЕ ОТВЕТЫ)

Ответ отправлен: 13.03.2003, 14:58
Отправитель: Joy


 Вопрос № 2764

Я наверное действительно задал вопрос пространственно. У меня есть необходимость купить компьютер, но мне бы не хотелось покупать настольный, т.к. я не хотел бы привязывать себя к одному месту, где бы стоял компьютер. Поэтому я хотел узнать, ноутбук действует при загрузке таким же образом как и настольный, т.е. организация загрузки системы происходит одинаковым образом. Есть ли отличие в программировании для VGA адаптера для ноутбука и ПК? Или отличия только в самой плате, а принцип их работы одинаковый (меня смущает, что на ПК монитор формирует изображение с помощью ЭЛТ, а на ноутбуке жидкрокристаллический дисплей).



Вопрос отправлен: 13.03.2003, 16:17
Отправитель: Mykola

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

Отвечает baldr

Приветствую Вас, Mykola!
Ноутбук - это, практически, полноценный комп! Если бы эксперт 10ck давно не ушел из
рассылки, то он бы тебя уже убедил покупать ноутбук! :)
Но учти, что ноуты стоят раза в два дороже равноценных компов! И таскать данные на винте
от друга можешь забыть, потому как там другие винты - поменьше...
В общем, все ПО, что идет на обычных персоналках ;), пойдет и на ноутбуке. А потом ты к
нему привыкнешь и не захочешь расставаться! :)
Вот, наладонники - это уже другой класс компов и для них софт пишется отдельно. (Я надеюсь
влиться в эту пока не очень массовую программерскую группу!:) )


Ответ отправлен: 13.03.2003, 23:37
Отправитель: baldr


Отвечает akul

Приветствую Вас, Mykola!
Ну наверное немножечко матчасть подучить надо... И в том и в другом случае изображением занимается видеоконтроллер. В большинстве современных ноутбуков (в моем compaq presario 1711 в частности) есть матрица и выходы на монитор CRT и телевизор. Видеоконтроллер сидит на шине PCI и абсолютно совместим с VGA. а вот дальше конечно же есть различие поскольку настройка матрицы несколько отличается (частоты обновления, растяжки и все такое) но этим обычно занимается биос хотя при программировании драйвера такого видеоадаптера придется все подобные моменты учитывать. Советую зайти на сайт ATI (www.ati.com) и почитать про мобильные видеочипы (ATI Rage mobile, ATI radeon mobile) это самые распостраненные чипы для современных ноутбуков. в любом случае если ты собрался писать операционную систему то тебе придется ДОСКОНАЛЬНО изучить работу каждого видеочипа под который будешь писать драйвер для поддержки его возможностей, выходящих за рамки стандартов VGA и VESA.

Ответ отправлен: 13.03.2003, 16:34
Отправитель: akul


Отвечает Ayl

Доброе время суток, Mykola!
Разумеется, одинаково. Так как порядок загрузки определяется процессором, то системы с одинаковым процессором будут вести себя аналогичным образом. Работа с видеоадаптером зависит от последнего, а не от типа компа. ЖК-дисплей ты можешь точно также подключить и к настольному компу - разницы не будет.
Если даже и есть какие-то различия между ПК и ноутбуком, то они элементарно сглаживаются с помощью BIOS, драйверов и т.п.
Сам подумай, если одна и та же операционка работает без изменений и на ПК, и на ноутбуке - много ли различий между ними?

Ответ отправлен: 13.03.2003, 17:09
Отправитель: Ayl


Отвечает Joy

Здравствуйте, Mykola!
Архитектура одинаковая. Программирование на буке ничем не отличается от программирования на PC (когда я работал на буке, то отличий не нашел, за исключением дополнительных функций БИОСа бука).
>меня смущает, что на ПК монитор формирует изображение с помощью ЭЛТ, а на ноутбуке жидкрокристаллический дисплей
А что тебя здесь смущает? К PC так же подключают ЖК мониторы. И ни чем это не сказывается на работе. Посоветую тебе почитать отличную книгу Попова "Видеосистема PC".

Ответ отправлен: 14.03.2003, 08:00
Отправитель: Joy


Отвечает Bob Johnson

Здравствуйте, Mykola!
> а на ноутбуке жидкрокристаллический дисплей
Так ты можешь и на ПК купить ЖК монитор... Это ничего не меняет (даже можешь карту с цифромым выходом купить и по цифровому подключить). Все остальное одинаково (с точки зрения программирования).


Ответ отправлен: 14.03.2003, 14:59
Отправитель: Bob Johnson


Отвечает Maverick

Добрый день, Mykola!
Насчет жидкокристалических дисплее не знаю, но думаю, что различий нет, имеется в иду програмирование, за это должна отвечать аппаратная часть, а это головная боль изготовителя, обеспечить совместимость.
А загрузка и все остальное такое же.

Ответ отправлен: 15.03.2003, 12:44
Отправитель: Maverick


 Вопрос № 2765

Доброе время суток!
К вопросу № 2750:
MCI - не выход! Мне надо работать напрямую с аппаратурой. Т.е. использовать "комманды" ATAPI. Так как можно заставить это работать под Win??? Будут ли работать (правильно) in/out??? Как мне все это замутить?
З.Ы. Просто у меня пока еще недостаточно знаний в программирования под WIN.



Вопрос отправлен: 13.03.2003, 20:14
Отправитель: Илья (b.i@date.by)

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

Отвечает Bob Johnson

Здравствуйте, Илья!
Тогда это гораздо сложнее. Под винды in или out работать не будут (по крайней мере из программы) - нужен драйвер.
Под НТ (2к, хр) можно "открыть" устройство - CreateFile (см. MSDN), как обычно, под 98 - нет.
Как напрямую ATAPI-устройству команду подать сказать не могу, потому что не знаю... Может кто-то другой ответит...


Ответ отправлен: 15.03.2003, 01:24
Отправитель: Bob Johnson



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

Внимание!
Форма может работать некорректно в почтовых программах "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 (34)
C / C++ (29)
Perl (6)
Delphi (16)
Pascal (19)
Basic / VBA (11)
Java / JavaScript (10)
PHP (7)
MySQL / MSSQL (6)
Пользователю
Windows 95/98/Me (33)
Windows NT/2000/XP (25)
"Железо" (29)
Поиск информации (14)
Администратору
Windows NT/2000/XP (12)
Linux / Unix (13)
Юристу
Гражданское право (7)
Семейное право (3)
Трудовое право (4)
КоАП (4)

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




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

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


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

В избранное