4

次のように、ソース コードでシステム コールを作成しようとしています。

int file;
file = open(argv[index], O_RDONLY);

コマンド ラインの引数は、ファイル システム内のバイナリ ファイルへのパスです。しかし、この呼び出しはEINVALエラーをスローします。ファイルの存在と、それにアクセスするために必要な権限を確認しました。

EINVALエラーがスローされる状況に関する提案。

4

3 に答える 3

1

argv[index]実際にファイル名が含まれていて、なんらかの方法O_RDONLYでオーバーライドされていない(O_RDONLY0に等しい)ことが確実な場合は、dmesgコマンドを使用してシステムログをチェックし、カーネル内でファンキーなことが発生していないことを確認してください。

于 2012-06-15T18:47:19.980 に答える