[ad_1]
The server threw an exception. (Exception from HRESULT: 0x80010105 (RPC_E_SERVERFAULT))
Khi chạy dự án của tôi gặp lỗi này, vui lòng giúp tôi giải quyết vấn đề
Những gì tôi đã thử:
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
Giải pháp 1
Thành thật mà nói, chúng tôi không thể giúp bạn với thông tin nhỏ đó và có thể không thể cung cấp cho bạn “giải pháp đầy đủ” – đơn giản vì chúng tôi không có cách nào để truy cập vào bảng tính trên hệ thống của bạn trong khi mã của bạn đang chạy và bạn cần điều đó để bắt đầu chẩn đoán vấn đề.
Vì vậy, nó sẽ tùy thuộc vào bạn.
May mắn thay, bạn có sẵn một công cụ giúp bạn tìm hiểu điều gì đang xảy ra: trình gỡ lỗi. Nếu bạn không biết cách sử dụng nó thì “Trình gỡ lỗi Visual Studio” nhanh chóng của Google sẽ cung cấp cho bạn thông tin bạn cần.
Đặt điểm dừng trên dòng đầu tiên trong hàm và chạy mã của bạn thông qua trình gỡ lỗi. Sau đó, hãy xem mã và dữ liệu của bạn và tìm hiểu xem điều gì sẽ xảy ra theo cách thủ công. Sau đó, thực hiện từng bước một để kiểm tra xem điều bạn mong đợi xảy ra có chính xác là điều đã xảy ra hay không. Nếu không, đó là lúc bạn gặp sự cố và bạn có thể theo dõi lại (hoặc chạy lại và xem xét kỹ hơn) để tìm hiểu lý do.
Khi biết dòng nào gây ra ngoại lệ, bạn có thể xem dữ liệu bạn đã truyền cho nó và nó đang làm gì (có thể bạn sẽ cần phải chạy lại ứng dụng của mình với điểm dừng được đặt trên dòng bị lỗi). Dữ liệu sẽ cung cấp cho bạn manh mối về vấn đề.
Xin lỗi, nhưng chúng tôi không thể làm điều đó cho bạn – đã đến lúc bạn học một kỹ năng mới (và rất, rất hữu ích): gỡ lỗi!
[ad_2]
コメント