Question : « Argument inadmissible fourni. » L'erreur en produisant de PDFs dans l'application de VB.NET par l'intermédiaire du cristal rapporte la visionneuse

J'ai développé une application simple pour produire des documents de pdf. Cela fonctionne juste fin, à moins qu'il semble que approximativement chaque 8ème rapport produit il me donne « un argument inadmissible fourni. Pour rechercher des données de la base de données. Erreur dans le dossier C:\DOCUME ~1 \ \ LOCALS~1 \ Temp \ PDF_Report {EDB21020-D860-4FEE-B5FA-55AD61847E3F} .rpt : Argument inadmissible pour la base de données. » erreur. L'application est prévue pour lire un ensemble de variables à partir d'un dossier des textes, produire du rapport, puis pour exporter ce dossier vers la chemise appropriée. Voici mon code :

Imports CrystalDecisions.CrystalReports.Les poignées secondaires privées Start.Click

de la classe Form1

Start_Click (expéditeur d'Engine
Imports CrystalDecisions.Shared
Imports System.IO
Imports System.Threading.Thread

Public de ByVal comme System.Object, ByVal e comme System.EventArgs) 'créent le nouvel exemple de StreamReader avec employer block.
Using le lecteur comme StreamReader = nouveau compteur du

de StreamReader (« file.txt ») faible comme nombre entier = 0

tandis que (pas) le
obscurcissent la ligne comme String
faible AssessmentID comme String
faible VisitID comme faible rptPath de String
comme ligne de String

= reader.ReadLine

AssessmentID = ligne. Sous-chaîne (0, 7)
VisitID = ligne. Sous-chaîne (8, le rptPath de 7)

= de « C:\PDF _Report.rpt " obscurcissent le CR en tant que nouveau crParameterDiscreteValue du

du
CR.SetDatabaseLogon ( de « utilisateur ", « mot de passe », « serveur », « DB » de ReportDocument

CR.Load (rptPath)) faible en tant que nouveau faible crParameterFieldDefinitions de ParameterDiscreteValue
comme faible crParameterFieldLocation de ParameterFieldDefinitions
comme faibles crParameterValues de ParameterFieldDefinition
pendant que nouveau ParameterValues
le « 
 » obtiennent les crParameterValues du
de crParameterFieldLocation = de crParameterFieldDefinition des paramètres collection.
'crParameterFieldDefinition/>s = CR.DataDefinition.ParameterFields
'du rapport/>s.Item le

(« @AssessmentID ») = le crParameterDiscreteValue de crParameterFieldLocation.CurrentValues
= nouveau CrystalDecisions.Shared.ParameterDiscreteValue
crParameterDiscreteValue.Value = des crParameterValues du
de crParameterFieldLocation = de crParameterFieldDefinitions.Item (« @Visit_OID » du

) du
crParameterFieldLocation.ApplyCurrentValues (crParameterValues) de
crParameterValues.Add (crParameterDiscreteValue) d'international (AssessmentID) = crParameterFieldLocation.CurrentValues
'crParameterDiscreteValue = nouveau CrystalDecisions.Shared.ParameterDiscreteValue
crParameterDiscreteValue.Value = crParameterFieldDefinition
de
crParameterFieldLocation.ApplyCurrentValues (crParameterValues) de VisitID
crParameterValues.Add (crParameterDiscreteValue)/>s = CR.DataDefinition.ParameterFields

CrystalReportViewer1.ReportSource = CR

txtAssessmentVisit.Text = AssessmentID et »/« et VisitID

obscurcissent le myDiskFileDestinationOptions comme myDiskFileDestinationOptioskFileDestinationOptions
/>ns = nouveau Le
de CrystalDecisions.Shared.DiskFileDestinationOptions () obscurcissent des myExportOptions comme faible myExportFile de CrystalDecisions.Shared.ExportOptions
comme String
myExportFile = « S:\Missed Assessments\MIASA » et du
d'AssessmentID et de » .pdf "/>eName = myExportOptions du myExportFile
= CR.ExportOptions
myExportOptions.DestinationOptions = myDiskFileDestinationOptions
myExportOptions.ExportDestinationType = ExportDestinationType.DiskFile
myExportOptions.ExportFormatType = le

de
GC.Collect d'ExportFormatType.PortableDocFormat

CR.Export () () parent = contre- + 1
extrémité Sub
End Class

Thank du

d'Using
de fin du

de txtNumberProcessed.Text = de counter.ToString ()/>
MessageBox.Show le myDiskFileDestinationOptions.DiskFil class= de

Réponse : « Argument inadmissible fourni. » L'erreur en produisant de PDFs dans l'application de VB.NET par l'intermédiaire du cristal rapporte la visionneuse

Essai faisant la collection de garbabe deux fois :
Nettoyer la mémoire.
GC.Collect () ;
GC.WaitForPendingFinalizers () ;

// que La CHROMATOGRAPHIE GAZEUSE doit s'appeler deux fois afin d'obtenir
// Finalizers a appelé - la première fois dedans, il fait simplement
// une liste de ce qui doit être mené à bonne fin, la deuxième fois dedans,
// il réellement la finalisation. Seulement alors
l'objet de // font son ReleaseComObject automatique.
GC.Collect () ;
GC.WaitForPendingFinalizers () ;
Autres solutions  
  •  MS Excel 2007 et pdf - l'exportation vers le pdf prend de longues heures !
  •  Dans le Perl, comment j'ajoute une valeur à la liste, puis le contrôle pour voir si la valeur existent avant d'ajouter une nouvelle valeur
  •  Comment fais j'initialiser de la HP BL460c G6 de san et de la HP XP 240000
  •  Comment fais j'employer une clef de permis de volume sur un ordinateur de HP avec du CD de restauration
  •  Emplacement primaire de deux SCCM dans l'annuaire actif
  •  L'initiateur et la HP D2D de l'iSCSI R2 du serveur 2008 de Windows GERCENT l'issue
  •  Stocker le dossier dans le mysql using connector.net et le champ de goutte
  •  Carte vidéo d'USB - bit 32 sur le matériel travaillant au niveau du bit 64 ?
  •  asp.net que j'essaye de convertir une forme de HTML en forme d'aspx ou ? ce qui jamais. Aide du besoin sur la façon dont à à elle.
  •  Winzip 12 issues de secours du travail ?
  •  
    programming4us programming4us