0

2 つのバッチ ファイルを使用して zip ファイルを解凍し、解凍された xls を CSV に変換してデータを SQL テーブルに BCP するコンソール アプリがあります。このコンソール アプリを 1 日 1 回実行するようにスケジュールしたいと思います。上記のアプリを実行するようにWindowsタスクスケジューラをセットアップしました。タスクを「テスト実行」しようとしましたが、エラーは発生しません。例外がキャッチされたときにアプリがtxtファイルに書き込んでいて、「使用しようとしているxlsファイルは別のプロセスで使用されています」という行に沿ってエラーが発生します。

注: SQL への xls のインポートを達成するためのより効率的な方法があることは知っていますが、SQL SERVER のフル バージョンを購入するには安すぎるクライアント向けです。

4

3 に答える 3

1

XML ファイルの保留が解除されていません。そのリソースを使用している他のプログラムを把握し、その接続が閉じられていることを確認する必要があります。テストの実行で接続を閉じず、後でタスクを実行したときに、リソースを解放していない別のプロセス (アプリの以前のインスタンス) が存在する可能性があります。

于 2009-06-22T18:48:43.460 に答える
1

完全に解凍する前にxmlファイルを使用しようとしているようです。前述の rie819 の可能性も確認してください。

スクリプトを投稿していただければ、より適切にサポートできます。

于 2009-06-22T18:55:08.503 に答える
0

必要な結果を出す方法を見つけました。コンソールアプリから2つのバッチファイルを取り出しました。これで、1つのバッチ、コンソールアプリ、および最後のバッチを実行するようにスケジュールされたタスクがあります。私が受け取った両方の答えは正しかった、実行の途中でコンソールウィンドウが開いたためにXMLをリリースしていなかった。それらが削除されたので、エラーは発生しなくなりました。助けてくれてありがとう。-Z

于 2009-06-23T15:39:11.143 に答える