[ad_1]
The server threw an exception. (Exception from HRESULT: 0x80010105 (RPC_E_SERVERFAULT))
运行我的项目时出现此错误,请帮我解决问题
我尝试过的:
1 Private Function GetXlUsedRange(ByVal filePath As String) As Object(,) 2 Dim xlApp As Excel.Application 3 Dim xlWorkbooks As Excel.Workbooks 4 Dim xlWorkbook As Excel.Workbook 5 Dim xlSheets As Excel.Sheets 6 Dim xlWorkSheet As Excel.Worksheet 7 Dim xlRange As Excel.Range 8 9 10 xlApp = New Excel.Application 11 xlWorkbooks = xlApp.Workbooks 12 xlWorkbook = xlWorkbooks.Open(filePath) 13 xlSheets = xlWorkbook.Worksheets 14 xlWorkSheet = CType(xlSheets("Data"), Excel.Worksheet) 15 xlRange = xlWorkSheet.UsedRange 16 17 Dim rangeValues(,) As Object 18 rangeValues = CType(xlRange.Value, Object(,)) 19 20 21 xlWorkbook.Close() 22 xlWorkbooks.Close() 23 xlApp.Quit() 24 25 releaseObject(xlRange) 26 releaseObject(xlWorkSheet) 27 releaseObject(xlSheets) 28 releaseObject(xlWorkbook) 29 releaseObject(xlWorkbooks) 30 releaseObject(xlApp) 31 32 Return rangeValues 33 End Function 34 35 Private Sub releaseObject(ByVal obj As Object) 36 Try 37 System.Runtime.InteropServices.Marshal.ReleaseComObject(obj) 38 obj = Nothing 39 Catch ex As Exception 40 obj = Nothing 41 End Try 42 End Sub 43 44 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click 45 Dim usedRange(,) As Object = GetXlUsedRange("C:\Users\Jayanta Modak\Desktop\import.xls") 46 47 Dim fromRow As Integer = 7 48 PopulateListView(usedRange, fromRow) 49 End Sub
解决方案1
老实说,我们无法为您提供那么一点信息,并且可能根本无法为您提供“完整的解决方案” – 只是因为我们无法在您的代码运行时访问您系统上的电子表格,并且您需要它来开始诊断问题。
所以,这将取决于你。
幸运的是,您有一个可用的工具可以帮助您了解正在发生的情况:调试器。 如果您不知道如何使用它,那么快速搜索“Visual Studio 调试器”应该可以为您提供所需的信息。
在函数的第一行放置一个断点,然后通过调试器运行代码。 然后查看您的代码和数据并找出应该手动发生的情况。 然后单步执行每一行,检查您期望发生的情况是否确实发生。 如果不是,那就是你遇到了问题,你可以回溯(或再次运行它并更仔细地查看)以找出原因。
当您知道哪一行导致异常时,您可以查看传递给它的数据以及它正在执行的操作(您可能需要在失败的行上设置断点来重新运行应用程序)。 数据应该为您提供有关问题的线索。
抱歉,我们无法为您做到这一点 – 您是时候学习一项新的(并且非常非常有用)技能了:调试!
[ad_2]
コメント