标题: [求助]ioctl控制光驱命令
aababy
新生入学
Rank: 1
注册用户



UID 188794
精华 0
积分 0(积分有什么用?)
帖子 12
阅读权限 10
注册 2007-4-12
状态 离线
发表于 2007-9-4 15:59  资料  个人空间  短消息  加为好友 
[求助]ioctl控制光驱命令

一个简单的控制光盘退出程序:
7L^6L{&B2vq6U6p0RS9\L'@-@
#include <unistd.h>
w3|0N+]Ay[q(O//closewww.linuxeden.comn:`m&oD+u{I~{f
#include <sys/types.h>
X5~R2Z@GD#include <sys/stat.h>9jS)U"xALT,\
#include <fcntl.h>
N7e"~m0W^@;~hLinux伊甸园论坛//open()
C`g5]:I
E q
#include <stdio.h>
)uUw5^]
@ h+f8G!af
//perror()Linux伊甸园论坛&d4wK6uv;a9]4A
#include <stdlib.h>
5p)SJew%E#include <sys/ioctl.h>
nH&~/L{+|,x
iKLinux伊甸园论坛
S\+Z&fsl^
#define DEVICE "/dev/cdrom",{7wi6F {!I
6sr5`TN:lrBP
int main()1gN+|pJ%J(@
{
[+Je:W        DR        int fd;Linux伊甸园论坛l7@(s,[k*~1k*f&M
        int status;
Hx;e/[4Y"r:g       
T3co'|em        //打开设备
[L*]\A0pI(Y        fd =open (DEVICE, O_RDONLY|O_NONBLOCK);
4P,Z@ q        d+zLinux伊甸园论坛        if(fd<0) {J_*I,p8j3z
                perror("unable to open" DEVICE);
0nYZ+{1c9fr/`                exit(1);D        i j/sd4vxs+O
        }
E1t4[8r3Zv
_wB
       

p!w5\)|]'J v9i,LF m
        //退出光盘www.linuxeden.comth~Da+\9z/g
        status =ioctl(fd, CDROMEJECT); j0S$?!L%z8g8{6@b
        if(status != 0)//未退出
;X-T~%[!`4r        {
tg+l%nN"zwww.linuxeden.com                perror("CDROMEJECT ioctl failed");
vl![8w
b
C^
                exit(1);
m        C
N;`5IlZ
        }
C5~:l
goDD+s
       
{$P'T)Qe        //关闭设备
S6l,gy(E:XO        status= close(fd);
UC*M(qP        if(status != 0)Linux伊甸园论坛"B,`^UC0P"X)ZI
        {^eT8BkjLe([
                perror("unable to close" DEVICE);
'xC'B8]}nd.hj                exit(1);Q7n9V9M        [k
        }www.linuxeden.com^)mD)Gc9gv tH9AS8I
        %}5F1?)Dz]
        return 0;.Le"M"I`
}1d+_ b
?9X aR


Wr#]v1X&[0ewww.linuxeden.com编译说CDROMEJECT未声明:www.linuxeden.comKo%RS?t#Gh0[
[root@localhost 070819]# gcc -Wall cd1.c -o cd1
lR$?.d2oHcd1.c: 在函数 ‘main’ 中:Linux伊甸园论坛        nB'lvr$R6E-J
cd1.c:27: 错误:‘CDROMEJECT’ 未声明 (在此函数内第一次使用)

rM5E$dd        `+^m
\g#qQ{J#cu
谢谢大家.

顶部
不容错过的IBM 集群技术资源汇总
aababy
新生入学
Rank: 1
注册用户



UID 188794
精华 0
积分 0(积分有什么用?)
帖子 12
阅读权限 10
注册 2007-4-12
状态 离线
发表于 2007-9-4 16:28  资料  个人空间  短消息  加为好友 
自己找到答案了
,wp [P8]7b'I        YHh o!E忘了加 #include <linux/cdrom.h>

顶部
 



当前时区 GMT+8, 现在时间是 2008-5-17 05:03

    Powered by Discuz! 5.5.0  © 2001-2007 Comsenz Inc.
Processed in 0.070982 second(s), 5 queries

清除 Cookies - 联系我们 - Linux伊甸园 - Archiver - WAP