Имя cd с помощью с++ (Как узнать имя компакта)
Модератор: Модераторы разделов
-
v04bvs
- Сообщения: 636
- ОС: Debian GNU/Linux
Re: Имя cd с помощью с++
Сорри, не так понял вопрос. Прошу удалить этот пост.
-
biolim
- Сообщения: 142
Re: Имя cd с помощью с++
В консоли
# dd if=/dev/cdrom bs=1 count=32 skip=32808
Отсюда
#include <stream.h>
#include <fstream.h>
int main()
{
FILE* f;
f=fopen("/dev/cdrom","r");
fseek (f,32808,0);
char c[32];
int i;
for (i=0;i<=40;i++) c[i]=getc(f);
cout<<c;
return 0;
}
Дописываем обрезание лишних пробелов.
И тут встал.... вопрос встал...
Доступ к этому файлу устройства имеет только рут. И монтировать может тоже только рут. Как разрешить другим монтировать. И читать.
# dd if=/dev/cdrom bs=1 count=32 skip=32808
Отсюда
#include <stream.h>
#include <fstream.h>
int main()
{
FILE* f;
f=fopen("/dev/cdrom","r");
fseek (f,32808,0);
char c[32];
int i;
for (i=0;i<=40;i++) c[i]=getc(f);
cout<<c;
return 0;
}
Дописываем обрезание лишних пробелов.
И тут встал.... вопрос встал...
-
v04bvs
- Сообщения: 636
- ОС: Debian GNU/Linux
Re: Имя cd с помощью с++
% ls -l /dev/hdb
brw-rw---- 1 root cdrom 3, 64 2006-06-13 15:38 /dev/hdb
т.е. в debian достаточно добавить пользователя в группу cdrom. Насчёт монтирования - man fstab на предмет опции user
brw-rw---- 1 root cdrom 3, 64 2006-06-13 15:38 /dev/hdb
т.е. в debian достаточно добавить пользователя в группу cdrom. Насчёт монтирования - man fstab на предмет опции user
-
biolim
- Сообщения: 142
Re: Имя cd с помощью с++
А как в с++ узнать путь куда было примонтировано устройство.
-
Liksys
- Сообщения: 2910
-
biolim
- Сообщения: 142
-
powerfox
- Сообщения: 458
Re: Имя cd с помощью с++
Программа должна минимально зависеть от всяких групп, группы влияют почти.только на системные команды, из программы можено получить доступ и без изменения прав/групп, иначе ваше решение неудачно.
Что мешает посмотреть linux/cdrom.h? Там всё есть.
Что мешает посмотреть linux/cdrom.h? Там всё есть.
-
Liksys
- Сообщения: 2910
-
powerfox
- Сообщения: 458
Re: Имя cd с помощью с++
(Liksys @ Jun 13 2006, в 22:50) писал(а):man unistd.h (не помню функцию)
А вы такой мануал видели? С каких пор пишутся мануалы для заголовочныз файлов, которые сами являются своеобразным мануалом по исходнику,,, Скоро на вопрос по *.cpp будут отвечать "man *.cpp".
-
biolim
- Сообщения: 142
Re: Имя cd с помощью с++
Powerfox - как только увидишь что постит biolim плиз не лезь. Твоя ахиенея уже достала.
-
powerfox
- Сообщения: 458
Re: Имя cd с помощью с++
(biolim @ Jun 15 2006, в 00:41) писал(а):Powerfox - как только увидишь что постит biolim плиз не лезь. Твоя ахиенея уже достала.
С каких пор рекомендации использовать заголовки ядра стали ахинеей?
-
t.t
- Бывший модератор
- Сообщения: 7390
- Статус: думающий о вечном
- ОС: Debian, LMDE
Re: Имя cd с помощью с++
Ага, видели. А вы не видели? Показываю:powerfox писал(а): ↑14.06.2006 15:03А вы такой мануал видели? С каких пор пишутся мануалы для заголовочныз файлов, которые сами являются своеобразным мануалом по исходнику,,, Скоро на вопрос по *.cpp будут отвечать "man *.cpp".(Liksys @ Jun 13 2006, в 22:50) писал(а):
man unistd.h (не помню функцию)
Код: Выделить всё
<unistd.h>(P) POSIX Programmer's Manual <unistd.h>(P)
NAME
unistd.h - standard symbolic constants and types
SYNOPSIS
#include <unistd.h>
DESCRIPTION
The <unistd.h> header defines miscellaneous symbolic constants and types, and declares miscellaneous
functions. The actual values of the constants are unspecified except as shown. The contents of this
header are shown below.
...И к словам biolim'а я бы на вашем месте прислушался...
¡иɯʎdʞ ин ʞɐʞ 'ɐнɔɐdʞǝdu qнεиж
-
powerfox
- Сообщения: 458
Re: Имя cd с помощью с++
(t.t @ Jun 15 2006, в 19:28) писал(а):Ага, видели. А вы не видели? Показываю:
Извиняюсь, пробовал в консоле, но не проверил в репозитории наличие мануалов.
-
ety
- Сообщения: 358
- ОС: Linux
Re: Имя cd с помощью с++
кстати, в первых 16 секторах которые ты пропускаеш в dd, для некоторых систем тоже есть название, и после CD001 иногда идет UDF, в которой более точные название диска и инфа.
Образование - это вовсе не то, чему человека учили, а то, чему он научился.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.
-----
Время, необходимое на компиляцию пакета обратно пропорционально его полезности и важности его наличия в системе.