2010-01-07 68 views
0

在腳本組件使用這種在SSIS - >的COM SSIS寧可Schdeule在64位服務器

Microsoft.Office.Interop.Excel.Application objXL =新的Microsoft.Office.Interop.Excel。應用(); objXL.DisplayAlerts = false; objXL.Visible = false; 工作簿objWorkbook = objXL.Workbooks.Open(strFileNameWithFolderName,false,true,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type.Missing,Type。 Missing,Type.Missing,Type.Missing,Type.Missing); 工作表objSheet;

 //Get SheetName of the Workbook which contains exact the same columns 
     for (int i = 1; i <= objWorkbook.Worksheets.Count && strMatchedorNot==false; i++) 
     { 

&等

當我直接執行此,它運行沒有問題,但是當我嘗試安排這個就說明這個errr

ESCRIPTION:System.Reflection.TargetInvocationException:異常是由調用的目標引發的。 ---> System.Runtime.InteropServices.COMException(0x800A03EC):Microsoft Office Excel無法訪問文件'\ 10.177.189.12 \ C $ \ inetpub \ WWW_TEST \ Abc \映射規則上載\ 1000000023_elizafox_Jan-05-2010_113731.xlsx'。有幾個可能的原因:?文件名或路徑不存在。 ?該文件正在被另一個程序使用。 ?您嘗試保存的工作簿與當前打開的工作簿具有相同的名稱。在Microsoft.Office.Interop.Excel.Workbooks.Open(字符串文件名,對象更新鏈接,對象ReadOnly,對象格式,對象密碼,對象WriteResPassword,對象IgnoreReadOnlyRecommended,對象源,對象分隔符,對象可編輯,對象通知,對象轉換器,對象AddToMru,Object Local,Object CorruptLoad)at ST_a8f4e90e3d884d578f79a2269c50080c.csproj.ScriptMain.Main()---內部異常堆棧跟蹤結束---在System.RuntimeMethodHandle._InvokeMethodFast(Object target,Object [] arguments,SignatureStruct & sig,MethodAttributes System.Reflection.RuntimeMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,Object [])中的System.RuntimeMethodHandle.InvokeMethodFast(Object target,Object [] arguments,Signature sig,MethodAttributes methodAttributes,RuntimeTypeHandle typeOwner)方法屬性,RuntimeTypeHandle typeOwner)參數,CultureInfo文化,布爾skipVisibilityChecks)在System.Reflection.Runtim System.RuntimeType.InvokeMember(String name,BindingFlags bindingFlags,Binder binder,Object target,Object [] providedArgs,ParameterModifier []修飾符)中的eMethodInfo.Invoke(Object obj,BindingFlags invokeAttr,Binder binder,Object []參數,CultureInfo culture) (System.Type.InvokeMember(String name,BindingFlags invokeAttr,Binder binder,Object target,Object [] args,CultureInfo culture)在Microsoft.SqlServer.Dts.Tasks.ScriptTask.VSTATaskScriptingEngine.ExecuteScript()中的文本信息文化,String [] namedParams) )結束錯誤警告:2010-01-07 08:47:22.58代碼:0x80019002源:LOOP通過每個輸入文件(請求未完成)描述:SSIS警告代碼DTS_W_MAXIMUMERRORCOUNTREACHED。執行方法成功,但引發的錯誤數量(1)達到允許的最大值(1);導致失敗。當錯誤數量達到MaximumErrorCount中指定的數量時會發生這種情況。更改MaximumErrorCount或修復錯誤。結束警告警告:2010-01-07 08:47:22.58代碼:0x80019002源:SABRE_SVR說明:SSIS警告代碼DTS_W_MAXIMUMERRORCOUNTREACHED。執行方法成功,但引發的錯誤數量(1)達到允許的最大值(1);導致失敗。當錯誤數量達到MaximumErrorCount中指定的數量時會發生這種情況。更改MaximumErrorCount或修復錯誤。結束警告DTExec:返回的包執行

當我禁用此步驟和schdeules這個,Pkg運行成功。 我正在運行它通過64位服務器。

請幫幫我。

問候, 馬尼什

回答

0

我懷疑這是一個安全問題,因爲您嘗試訪問管理共享C $。

您是否已經嘗試安排在不同的帳戶下?

+0

Thanx Filburt。但我正在使用的帳戶擁有c $的管理員權限。 但是當我使用Microsoft.ACE.4.0。連接到Excel文件。它在代理作業中成功運行。我懷疑自動化存在問題。我已經添加了對Interop程序集的參考。 請幫幫我。 – ManishKumar1980 2010-01-07 18:08:11

+0

也許這裏是一個提示:http://social.msdn.microsoft.com/forums/en-US/sqldataaccess/thread/20aafd3d-0219-4706-abb4-e4b35aebb18e/ – Filburt 2010-01-08 13:06:48

+0

Thanx Filburt。這是正確的評論 – ManishKumar1980 2010-01-25 17:14:20