2011-02-08 39 views
0

私はこの1つに固執しています。私はここに誰かがこれにいくつかの経験を持っていれば幸いですここに状況があります。 SSISを使用してSQL Server 2005にロードするフラットファイルをユーザーがアップロードできるようにするWebページを設定しました。ファイルの種類によって2種類のSSISプロセスがあります。使用するSSISプロセスの決定は、Webサイト上のユーザーによって行われます。エラー0x800401F3 1つのプロセスが動作していますが、同じWebサイトではありません

ファイルがユーザーによってアップロードされると、プロセスは.NET Processオブジェクトによって開始されます。コマンドラインは、dtexecを特定のSSISファイルで起動するのに必要な通常のコマンドラインで、2つの変数を設定します。たとえば:

dtexec/F /デ/設定値

ASP.NET匿名ユーザーは、ドメインユーザーアカウントとして実行されています。両方のSSISプロセスのすべてのSSISパッケージファイルは同じディレクトリにあります。ドメインユーザーアカウントには、そのディレクトリに対する完全な権限が与えられます。 ASP.NETの同じメソッドは、いずれかのプロセスを開始します。唯一の違いは、ウェブサイトが呼び出すWebMethodです。各タイプごとに1つのWebMethod。これらのWebメソッドでは、固有の引数がSSISのコマンドラインテキストに割り当てられます。

ここに私が問題に遭遇した場所があります。 Webサイトプロセス "1"を実行するとうまく動作しますが、上記のエラーでプロセス "2"が失敗します。私は標準出力をキャプチャするとき、私はこれを受け取る:

のMicrosoft(R)SQL Serverの パッケージユーティリティのバージョン9.00.4035.00 32ビットの著作権(C)マイクロソフト 社1984年から2005年のための を実行します。全著作権所有。開始

:10時34分14秒AMは、エラーが原因 0x800401F3の DTS.Applicationを作成できませんでしたが開始終了:10時34分14秒AM :10時34分14秒AM経過:0.016 秒

私はすべてがほぼ同じであることが理解できませんが、1つだけが実行されます。最後に、Visual Studioから直接テストを行っているときに、両方のメソッドがうまく動作します。私はそれが匿名ユーザーアカウントを使用して何かでなければならないと思っていますが、なぜ似たような場合に1つのプロセスが動作し、他のプロセスが動作しないのか理解できません。

ご協力いただきますようお願い申し上げます。
ロブ

答えて

1

問題が見つかりました。エラーコードはファントムでした。何が起こったのかは、新しいアカウントが移動できなかったフォルダへのパスを保持していた変数によって接続コンポーネントに供給されていたことです。プロセス中ではそれが良い目標に置き換えられても、検証では失敗していました。これがログがなかった理由です。私はそれを見るのに十分高いログレベルを持たず、セキュリティ上の問題のように振る舞いました。それはそれを見る方法であった。

関連する問題