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

RusFAQ.ru: Программирование на C / C++


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


RusFAQ.ru: Программирование на C / C++

Выпуск № 275
от 04.06.2003, 23:10

Администратор:
Имя: Nick.Box
URL: Информационный ресурс
ICQ: 365124
[censored], [censored]
О рассылке:
Задано вопросов: 832
Отправлено ответов: 1908
Активность: 229.3 %
[Задать вопрос >>][Регистрация эксперта >>]
[Поиск в базе][Обсудить на форуме]


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

[MozgC]
Статус: Профессиональный
Общий рейтинг: 170.58
[Подробней >>]
BOLT
Статус: Профессиональный
Общий рейтинг: 171.61
URL: В помощь начинающему программитсу Assembler, C/C++
[Подробней >>]
Ramzes
Статус: Профессиональный
Общий рейтинг: 127.77
URL: Microsoft homepage
[Подробней >>]
 
xiron
Статус: Опытный
Общий рейтинг: 114.93
[Подробней >>]
Илья
Статус: Опытный
Общий рейтинг: 103.85
[Подробней >>]
Yuri Gordienko
Статус: Опытный
Общий рейтинг: 115.8
[Подробней >>]


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

Вопрос № 818. Уважаемые товарищи эксперты. Я прячу консоль используя комбинацию FindWindow и ShowWindow.о сталкнул... (ответов: 3)
Вопрос № 819. Существует ли интерфейс программирования под cd-recorderы Каким образом программно осуществляется за... (ответов: 3)
Вопрос № 820. Привет. Я недавно задавал вам вопрос связаный с очень старой книгой Шилдта "Си для профессионал... (ответов: 3)
Вопрос № 821. Здраствуйте! Никогда не пользовался услугами этого раздела. А вопрос у меня простой. Я вот сейчас и... (ответов: 2)
Вопрос № 822. Привет, всем, Вас случаем не приходило письмо, с просьбой написать курсовик че-то там на С++. Просто... (ответов: 2)

Вопросов: 5, ответов: 13


 Вопрос № 818

Уважаемые товарищи эксперты.
Я прячу консоль используя комбинацию FindWindow и ShowWindow.о сталкнулся с такой проблеммой.ShowWindow работает по имени программы то есть если переименовать программу то перестанет прятаться консоль.Можно ли реализовать это по другому.



Вопрос отправлен: 31.05.2003, 23:27
Отправитель: Alexander

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

Отвечает [MozgC]

Перед тем как использовать процедуру ShowWindow считай имя своей программы

Ответ отправлен: 31.05.2003, 23:37
Отправитель: [MozgC]


Отвечает BOLT

Добрый день, Alexander!
Кто тебе такое сказал?
ShowWindow скрывает окно мо хэндлу

BOOL ShowWindow(
   HWND hWnd, // хэндл окна
   int nCmdShow // опция показа
);

Вот FindWindow ищет по тексту заголовка.
Можно использовать HWND FindWindowEx(...), но как тебе сказать по-мягче...в Win-NT based тебе машет крылом птица обломиного, т.е. по-русски эта функция не поддерживается в Windows NT/2k/XP.
Счастливо!

Ответ отправлен: 01.06.2003, 18:57
Отправитель: BOLT


Отвечает Ramzes

Доброе время суток, Alexander!
Если ты прячешь окно СВОЕГО приложения, то чтобы узнать имя приложения используй функцию GetModuleFileName

Ответ отправлен: 04.06.2003, 13:32
Отправитель: Ramzes


 Вопрос № 819

Существует ли интерфейс программирования под cd-recorderы
Каким образом программно осуществляется запись на cd



Вопрос отправлен: 01.06.2003, 00:07
Отправитель: Андрей

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

Отвечает xiron

Приветствую Вас, Андрей!
Мог бы возникнуть и такой вопрос, как програмно организовать чтение из обычного CD или Floppy. Это все делает драйвер устройства.
Например
CreateFile( "\\.\A:", ... )
Он обращается к драйверу устройства \.A и производит соответствующую операцию.

Ответ отправлен: 02.06.2003, 15:48
Отправитель: xiron


Отвечает BOLT

Приветствую Вас, Андрей!
Зайди на сайт Nero.Я там видел что-то типа этого.
http://www.nero.com
Счастливо!

Ответ отправлен: 01.06.2003, 18:44
Отправитель: BOLT


Отвечает Илья

Приветствую Вас, Андрей!
1 - через драйвер. Ищеш описание разных функций драйера твоего сидюка, их и юзаешь.
2 - используя atapi. Сам стандарт судя по всему платный, но в инете есть сокращенные версии. Получается ты сам пишешь свой драйвер.
З.Ы. Если нужен док по atapi - пиши, дам ссылочку

Ответ отправлен: 01.06.2003, 20:31
Отправитель: Илья


 Вопрос № 820

Привет. Я недавно задавал вам вопрос связаный с очень старой книгой Шилдта "Си для профессиональных программистов"... Ну так вот у меня есть еще один вопрос на эту тему. В приложении функция, предназначеная для считывания и сохранения части экрана, определенной координатами startx, starty, endx и endy в некую область памяти на которую ссылается указатель buf_ptr. Книга написана в раене 87-88 гг., и как я понимаю тогда не было 32-х разрадных машин, а значит указатель buf_ptr, который имеет тип unsigned int ссылается на 2-х байтовую область памяти... А вопрос заключается в следующем... Первое, если мне дописать short в обьявление указателя buf_ptr, то будет ли мой указетель на 32-х разрядном компьютере соответствовать указателю приведенному в книге, которая писалась для 16-разрядных машин??? Второе, запись "buf_ptr++" как я понимаю означает, что теперь мы ссылаемся на облась памяти, чей адрес на 2 байта больше чем был, но в эту облась мы записываем однобайтовое значение, на которое ссылается указатель t, а поскольку все это дело происходит в цикле, то как я понял после каждой операции "*buf_ptr++ = *t++;" у нас теряется один байт... так ли это, или я чего-то недопонял? Третье, опять как вы надеюсь заметили тут у нас в цикле выполняется операция "buf_ptr++", которая, опять же как мне известно, означает, что buf_ptr теперь ссылается на облась памяти с адресом на два байта большим, чем был ранее, то есть после окончания цикла buf_ptr будет ссылаться на адрес, который имееет значение большее, чем было ранее. То есть, если раньше buf_ptr ссылался на адресь, допустим, 0хА15В, то теперь (после того как в цыкле пы его израядно поинкрементили) он ссылается на некий адрес 0хВ15В (естественно все значения взяты от фонаря)... Так это или нет??? Или же записывать в новые адреса мы записывали, но buf_ptr как ссылался на 0хА15В, так и будет ссылатся до конца своих дней??? А если же он все-таки изменил свое значение, то как тогда понять тот факт, что в этой же книге есть еще и функция restore_video, которая ввостонавливает изображение на экране, записаное в buf_prt аналогичным способом?... да... что-то я разошелся... уже и сам не понимаю что я тут понаписывал... но у меня есть еще один самый важный вопрос. Допустим мы обьявили указатель int * pBuf; То как этому указателю на чистом Си (а не Си++) выделить свободное место в памяти??? в С++ делают все просто: pBuf=new int; а как то же самое сделать в Си, нде никакого new нету???
Пожалуйста не злитесь на чрезмерно длинный, неумело высказаный и просто дурацкий вопрос. Я все же надеюсь, что вы хоть что-то поняли из сказаного мной.
Спасибо.


Приложение:


Вопрос отправлен: 01.06.2003, 17:06
Отправитель: IamPlasticItsFantastic

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

Отвечает BOLT

Добрый день, IamPlasticItsFantastic!
Все Окей.
1)Дело в том в видео памяти все данные в текстовом режиме хранятся по 2 байта: символ-атрибут-символ-атрибут...
2)Используется функция void *malloc(size_t size); для выделение блока памяти.
Да прибудет с тобой великая сила!

Ответ отправлен: 01.06.2003, 19:20
Отправитель: BOLT


Отвечает Yuri Gordienko

Доброе время суток, IamPlasticItsFantastic!
Отвечу так: для нормальной компиляции и дальнейшей работоспособности программ из подобных книг, компилировать их нужно компилятором, который или рекомендуется автором или был распространенным в то время, т.к. за 15 лет язык изменился, директивы far,short в 32-битных компилерах не используются и оставлены только для совместимости. Об указателях не беспокойся, - это задача компилятора и операционной системы.
Память выделяй malloc'ом
Успехов


Ответ отправлен: 02.06.2003, 10:36
Отправитель: Yuri Gordienko


Отвечает xiron

Доброе время суток, IamPlasticItsFantastic!
1) int является платформо-зависимым типом на 32 разрядном он 32 битный а на 16 разрядном 16 бит. Ты можеш использовать short или long они являются 16-bit integer.
2) Да кажется 2-ой байтик теряется
3) Это чистая правда
А по поводу выделения памяти в C используй
void *malloc( size_t size );
void *calloc( size_t num, size_t size ); // Для массивов
void free( void *memblock ); // Для освобождения

Ответ отправлен: 03.06.2003, 17:21
Отправитель: xiron


 Вопрос № 821

Здраствуйте!
Никогда не пользовался услугами этого раздела. А вопрос у меня простой. Я вот сейчас использую Delphi для создания 2D-игр, но, возможно, в будущем мне его хватать не будет. Не подскажете, что лучше почитать обучающего про C++? В приложении адрес моей последней игры OXOTA. Если интересно, посмотрите и выскажите своё мнение. Занимает она 782 Кб.


Приложение:


Вопрос отправлен: 01.06.2003, 18:11
Отправитель: URiS (newff.narod.ru) (urisff@inbox.ru)

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

Отвечает Илья

Приветствую Вас, URiS (newff.narod.ru)!
Закачивал я твою игрушку. Прикольно. Скорее всего хорошо старался и долго писал. Молодец. Только Delphi все очень серьёзно портит. У меня на Duron1000//128Mb//GF2mx440_64Mb твоя игра при разрешении 800х600 выдавала 8fps. Все это либо ошибки в программировании, либо delphi. Предположу, что второе. Компилятор у delphi не очень (IMHO)... :( Вот для примера выслал тебе свой курсач по ООП. Там тему себе взял генерирование 3D ландшафта(из картинки) на opengl. Всё это дело мутил на "чистом" winapi используя "стандартный" opengl. И уменя всё это выдавало около 50fps.
Возможно, это прелесть opengl, но все равно, пытался я перевести все эдо для Delphi, так я з****лся. Все ужасно тормозилои многое работало не так как надо.
Учи С, учи С++, учись хорошо продумывать алгоритм, учись по жизни, и все будет ОК.
З.Ы. А "левые" проги на Delphi ты и так можешь писать.
З.З.Ы. "Левые" - такие которые пишутся не для себя и только для отмазки.
З.З.З.Ы. А кто такой Рэдигер Эш??? :))))

Ответ отправлен: 01.06.2003, 22:39
Отправитель: Илья


Отвечает BOLT

Доброе время суток, URiS (newff.narod.ru)!
Все подрят!Все что найдешь про C/C++ -все читай.Я не шучу.
И еще: все что изучаешь сразу на практике применяй, тогда тебе цены не будет!
Да будет с тобой Великая Сила!
Счастливо!

Ответ отправлен: 01.06.2003, 19:02
Отправитель: BOLT


 Вопрос № 822

Привет, всем, Вас случаем не приходило письмо, с просьбой написать курсовик че-то там на С++. Просто интересно это токо мне. или парень отослал его 40 экспертам, с надеждой, что мол кто-то из 40 да и напишет курсовик ? =)



Вопрос отправлен: 01.06.2003, 21:48
Отправитель: [MozgC]

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

Отвечает Yuri Gordienko

Приветствую Вас, [MozgC]!
Видать, к тебе особое доверие :))


Ответ отправлен: 02.06.2003, 10:37
Отправитель: Yuri Gordienko


Отвечает BOLT

Приветствую Вас, [MozgC]!
Да вроде не приходил
Да прибудет с тобой Велика Сила!

Ответ отправлен: 02.06.2003, 13:45
Отправитель: BOLT



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

Внимание!
Мы рекомендуем открывать рассылку в программе Internet Explorer 5.0+ или отправлять вопросы с сайта по адресу: http://rusfaq.ru/cgi-bin/Message.cgi.

(C) 2002-2003 Команда RusFAQ.ru.

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

Ваше имя:

Ваш e-mail:

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


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

Ваш вопрос:


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


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


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

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

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




Задать вопрос | Регистрация эксперта | Поиск в базе | Чат | Форумы | Новости
Проект экспертов RusFAQ.ru | Фотоальбом | Virus.RusFAQ.ru | Администрирование


Яндекс цитирования
© 2001-2003 Россия, Москва. Авторское право: Калашников О.А.

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

В избранное