Obtenez une erreur, aidez-moi, le serveur a généré une exception. (Exception de HRESULT : 0x80010105 (RPC_E_SERVERFAULT))

la programmation


The server threw an exception. (Exception from HRESULT: 0x80010105 (RPC_E_SERVERFAULT))

lorsque j’exécute mon projet, j’obtiens cette erreur, aidez-moi à résoudre le problème

Ce que j’ai essayé :

  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

Solution 1

Pour être honnête, nous ne pouvons pas vous aider avec ces petites informations, et ne pouvons probablement pas du tout vous donner une “solution complète” – tout simplement parce que nous n’avons aucun moyen d’accéder à votre feuille de calcul sur votre système pendant que votre code est en cours d’exécution, et vous en avez besoin pour commencer à diagnostiquer le problème.

Donc, ça va dépendre de vous.
Heureusement, vous disposez d’un outil qui vous aidera à comprendre ce qui se passe : le débogueur. Si vous ne savez pas comment l’utiliser, un rapide Google pour “Débogueur Visual Studio” devrait vous donner les informations dont vous avez besoin.

Placez un point d’arrêt sur la première ligne de la fonction et exécutez votre code via le débogueur. Ensuite, examinez votre code et vos données et déterminez ce qui doit se produire manuellement. Ensuite, passez chaque ligne en vérifiant que ce à quoi vous vous attendiez est exactement ce qui s’est produit. Lorsque ce n’est pas le cas, c’est à ce moment-là que vous avez un problème et vous pouvez revenir en arrière (ou l’exécuter à nouveau et regarder de plus près) pour découvrir pourquoi.

Lorsque vous savez quelle ligne provoque l’exception, vous pouvez consulter les données que vous lui avez transmises et ce qu’elles font (vous devrez probablement réexécuter votre application avec un point d’arrêt défini sur la ligne défaillante). Les données devraient vous donner des indices sur le problème.

Désolé, mais nous ne pouvons pas faire cela à votre place. Il est temps pour vous d’apprendre une nouvelle (et très, très utile) compétence : le débogage !

コメント

タイトルとURLをコピーしました