
質問者は追記ができないようなので、新しく質問させていただきます。
あるHPを参考に、makecab.exeにパラメータを渡して
動かす方法を行ったのですが、
エラーが出てしまい行き詰っています。
どこがおかしいのでしょうか?
●エラー内容(下記コードのretの値)
------------------------------------------------------------
Microsoft (R) Cabinet Maker - Version 5.1.2600.5512
Copyright (c) Microsoft Corporation. All rights reserved..
0.00% - list.txt (1 of 1)
100.00% - list.txt (1 of 1)
0.00% [flushing current folder]
80.56% [flushing current folder]
ERROR: (FCIFlushCabinet)Failure creating or writing cabinet file: permission denied
------------------------------------------------------------
●コード
list.txt というファイルを a.cab に圧縮する
------------------------------------------------------------
string cmd = @"c:\WINDOWS\system32\makecab.exe";
string trCmd = @"C:\cabTest\work\list.txt a.cab";
System.Diagnostics.ProcessStartInfo psi = new System.Diagnostics.ProcessStartInfo();
psi.FileName = cmd;
psi.RedirectStandardInput = false;
psi.RedirectStandardOutput = true;
psi.UseShellExecute = false;
psi.CreateNoWindow = true;
psi.Arguments = trCmd;
System.Diagnostics.Process p = System.Diagnostics.Process.Start(psi);
string ret = p.StandardOutput.ReadToEnd();
p.WaitForExit();
------------------------------------------------------------
以下、最初の質問
-------------------------------------------------------------
あるファイルをcabファイルに圧縮(まとめる?)する方法を考えています。
(例えば、a.txt,b.txtをまとめてab.cabにする)
Zipの圧縮であれば、
ZipOutputStreamを使ってているサンプル等があるのですが、
それに相当するものがあるのでしょうか?
それとも「makecab」コマンドを投げる方法がよいでしょうか?
-------------------------------------------------------------

No.1ベストアンサー
- 回答日時:
> ERROR: (FCIFlushCabinet)Failure creating or writing cabinet file: permission denied
エラーの説明をよく見れば permission denied ってなってますよね。
んで Failure creating or writing cabinet file ってなってますよね。
cab ファイルを書き込めなかった。
アクセス拒否された。
てことでしょうか。
> string trCmd = @"C:\cabTest\work\list.txt a.cab";
これって System32 フォルダーに cab ファイルを作ろうとしてません?
一度このとおりにコマンド プロンプトで実験してみればよいかと。
ありがとうございます。
コマンドプロンプトでやると問題なく動きます。
cabの解凍先もカレントディレクトリ?(コマンドを打った場所)になります。
書き込めないってのは分かりましたが、原因がまだ分かりません
また、いろいろ調べてみますが、
どなたかご存知の方がいらっしゃいましたらアドバイス
よろしくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- MySQL 参考書に従って入力したつもりでしたが、最後はエラーがでました。 1 2022/09/28 03:45
- Visual Basic(VBA) VBAでエクセルをtxtに変換するとエクセルでカンマを含む文字数字がtxtでは「""」付にならないよ 1 2022/08/27 12:17
- Excel(エクセル) エクセルVBA、間違っているコード内容を正して頂けませんか? エクセルワークシートに納品書を作ったの 2 2023/08/02 21:13
- Windows 10 VirtualBox 7のゲストOSでの物理HDDパーティションのマウント方法 2 2023/05/04 13:01
- Excel(エクセル) このコードに追記事項の仕方を教えて下さい。 以下のコード内容に出てくる。セルH3が空白の場合、エラー 4 2023/08/03 00:22
- Excel(エクセル) Excelにて、フォルダ内のTextファイルをマクロで統合すると文字化けしてしまう時の解消コード 4 2023/01/01 07:32
- Excel(エクセル) エクセル2019でPDFファイル名に枝番号をつけたい。 アクティブワークシートを印刷した後の処理とし 4 2023/06/06 21:00
- Visual Basic(VBA) 動かなくなってしまった古いVBAを動くようにしたい 8 2022/09/20 13:57
- Excel(エクセル) エクセルVBA、ファイル名をセルの値で保存の方法を教えてください。 おそれいります。こちらで数々のエ 6 2023/06/30 22:17
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
.txtではなく.logの方が良いの...
-
多数のサブディレクトリ内のフ...
-
VBAでワークシートを引数として...
-
Windowsのバッチファイルを利用...
-
リモートのファイル存在確認
-
バッチファイル 複数ファイル...
-
テキストファイルで提出とは?
-
renameコマンドについて
-
エクセルの各セルの内容をそれ...
-
VBSでフォルダ内のテキストファ...
-
ファイル名の一部をbatで変更し...
-
ファイルを処理中に次の処理に...
-
【C++】 ファイルの名前を変更...
-
外部exeに対しての引数受け渡し
-
COPYコマンドで結合すると余計...
-
ファイルの最後に文字列挿入
-
Excel VBAの文字列と数値の分類
-
【csh】ファイルの中の値を配列...
-
バッチ(bat)でリストファイルか...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
バッチ処理でファイルの中身を...
-
拡張子を元に戻す
-
.txtではなく.logの方が良いの...
-
VBAでワークシートを引数として...
-
多数のサブディレクトリ内のフ...
-
psqlでエラーログをとりたい
-
COPYコマンドで結合すると余計...
-
エクセルの各セルの内容をそれ...
-
バッチファイルで文字列削除に...
-
ファイルの最後に文字列挿入
-
UWSCでテキストファイルを開い...
-
バッチファイル 複数ファイル...
-
renameコマンドについて
-
ファイル名の一部をbatで変更し...
-
forfilesで検索したファイルを...
-
外部exeに対しての引数受け渡し
-
Windowsのバッチファイルを利用...
-
VBSでフォルダ内のテキストファ...
-
VBAでエクセルをtxtに変換する...
-
ExcelVBA テキストファイルUNIC...
おすすめ情報