Zum Inhalt springen

noobvb.net

Mitglieder
  • Gesamte Inhalte

    51
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von noobvb.net

  1. Hi Amstelchen, der Fehler lag genau daran, was du beschrieben hast. Das doppelte Angeben des Programmnamens verursachte Probleme. Gruß noob
  2. Hi TDM, du hast geschrieben Ich komm nicht drauf wie ich das machen soll. Kannst du mir vielelleicht sagen, wie du das machen würdest? Die komplette Klasse habe ich ja bereits gepostet. Wie würdest du diese nun anpassen? Sorry, dass ich so oft nachfrage, aber ich sollte das heute noch hinbekommen, da ich das Projekt bald abgeben muss. gruß
  3. Hi TDM, danke für den Hinweis. Komm aber irgendwie trotzdem nicht weiter. Die SchemaReaderSettings kennt kein Clear(), sondern nur Remove(), was mich auch nicht weiter bringt. Außerdem habe ich versucht über reset alle Member zurückzusetzen, was auch nichts bringt. Hast vielleicht noch nen tipp? gruß
  4. Hi TDM, so sieht die Property Schemas aus: ' Liste mit absoluten Pfadangaben zu den Schemas, gegen die geprüft werden soll Public ReadOnly Property Schemas() As List(Of String) Get Return SchemaList End Get End Property oder ist das jetzt das Falsche? Beste Grüße noob
  5. Hi TDM, kannst du mir sagen, ob ich die Instanz richtig geleert hab oder nicht. Der Fehler wird dadurch nicht behoben und ich bin etwas ratlos, wie ich die Hilfe von dir umsetzen soll. Beste Grüße noob
  6. Hi Leute, vielen dank für eure Hilfe. Habs mittlererweile hinbekommen. Gruß noob
  7. Hi TDM, vielen Dank für deine Antwort. Ich verwende diesen Aufruf um die Klasse zu verwenden. Dim openclass As New XmlValidator Dim Pfad As String Dim SchemaLocation As New List(Of String) Dim i As Integer SchemaLocation.Clear() If Not TextBox7.Text = "" Then SchemaLocation.Add(TextBox7.Text) End If If Not TextBox4.Text = "" Then SchemaLocation.Add(TextBox4.Text) End If If Not TextBox4.Text = "" Then SchemaLocation.Add(TextBox9.Text) End If openclass.Schemas.Clear() For i = 0 To SchemaLocation.Count - 1 Step 1 ' MsgBox(SchemaLocation(i)) openclass.Schemas.Add(SchemaLocation(i)) Next Mit openclass.Schemas.Clear() sollte doch die Schemaliste geleert werden oder nicht? Der Fehler besteht nämlich trotzdem. Das ist nämlich mein Problem. Trotz leeren der Liste besteht der Fehler. Gruß
  8. Hi Leute, ich hab mal wieder eine Frage an euch. Ich habe folgende Klasse: Public Class XmlValidator Private ErrorList As List(Of String) Private SchemaList As List(Of String) Private SchemaReaderSettings As XmlReaderSettings Private SchemaValidation As ValidationEventHandler 'Instanzieren der XmlValidator Klasse Public Sub New() SchemaList = New List(Of String) SchemaReaderSettings = New XmlReaderSettings() SchemaValidation = New ValidationEventHandler(AddressOf ValidationHandler) End Sub ' Bereitstellen der Einstellungen während der Validierung Public ReadOnly Property SchemaSettings() As XmlReaderSettings Get Return SchemaReaderSettings End Get End Property ' Liste mit absoluten Pfadangaben zu den Schemas, gegen die geprüft werden soll Public ReadOnly Property Schemas() As List(Of String) Get Return SchemaList End Get End Property 'Validiert die gegebenen XML-Strings gegen das Schema ''' <param name="RawXml">Die rohen XMl Daten, die validiert werden sollen</param> ''' <returns>Allgemeine Liste von Fehlermeldungen</returns> Public Function ValidateXml(ByVal RawXml As String) As List(Of String) ErrorList = New List(Of String) If Me.Schemas.Count > 0 Then Dim ReaderSettings As New XmlReaderSettings() With ReaderSettings .ValidationType = ValidationType.Schema .ValidationFlags = XmlSchemaValidationFlags.ProcessSchemaLocation Or XmlSchemaValidationFlags.ReportValidationWarnings Or XmlSchemaValidationFlags.AllowXmlAttributes For Each SchemaPath As String In Me.Schemas .Schemas.Add(Nothing, XmlReader.Create(SchemaPath, Me.SchemaSettings)) Next AddHandler .ValidationEventHandler, SchemaValidation End With Using Reader As XmlReader = XmlReader.Create(New StreamReader(RawXml), ReaderSettings) '(New StringReader(RawXml), ReaderSettings) While Reader.Read() 'Liest das gesamte File und ruft die Validierungs Handler Subrutine auf, 'wenn ein Fehler gefunden wird. Auf diese Weise ist es möglich alle 'Fehler des XML-Files zu ermitteln, anstatt bei jedem Fehler zu stoppen. End While End Using End If Return ErrorList End Function Private Sub ValidationHandler(ByVal sender As Object, ByVal e As System.Xml.Schema.ValidationEventArgs) If e.Severity = XmlSeverityType.Error Then ErrorList.Add(e.Message) End If End Sub End Class Diese funktioniert auch auf den ersten Blick wunderbar und liefert die Fehlermeldungen zurück, die im XMl-File auftauchen. Jetzt ist mir aber aufgefallen, dass die Klasse auch Fehler in XML-Files findet, zu denen sie gar kein Schema hat. Das dazugehörige Schema hatte ich zwar mal zu testzwecken verwendet, aber verwende es momentan nicht mehr. Kann es tatsächlich sein, dass die ReaderSettings-Klasse sämtliche jemals verwendete Objekte behält? Das wäre dann doch relativ gefährlich oder? Kennt sich vielleicht jemand damit aus und weiß vielleicht, wo man das, wenn es denn so wäre, wieder zurücksetzt? Hoffe, ihr könnt mir Helfen noob
  9. Hi Audi, einfach datagridview.datasource = "Deine Source" oder hab ich dich jetzt falsch verstanden? Gruß
  10. Hi Leute, hab mal wieder eine Frage an euch. Ich möchte aus Vb.net heraus die Commandline Version von 7zip starten und ein Zip-Archiv erstellen. Ich bekomme die Anwendung auch gestartet, jedoch geschieht nichts. Die Anwendung geht kurzzeitig auf und schließt sofort wieder. Das Archiv wird dabei aber nicht angelegt. Um die Anwendung zu starten, habe ich folgenden Code verwendet: Private Sub AddArchiv() 'Dim source As String 'Dim target As String Dim x As Process ' source = "testfiles" 'target = "testfiles.zip" Dim b As New ProcessStartInfo b.FileName = "testschnittstelle\7z.exe" b.Arguments = "7z a testfiles.zip testfiles\*" b.WindowStyle = ProcessWindowStyle.Maximized x = Process.Start( x.WaitForExit() End Sub[/code] Kennt sich jemand damit aus und kann mir einen Tip geben, was ich anders machen muss? Hoffe, ihr könnt mir helfen. Beste Grüße noob
  11. Hi Leute, hab mal wieder ne Frage. Ich möchte mittels VB.net auf einen Server zugreifen und die auf dem Server vorhandenen Ordnerstrukturen anzeigen. Hat von euch jemand eine Ahnung, wie man sowas machen kann? Die Verbindung zum Server bekomme ich noch hin, aber ich weiß nicht, wie ich auf die Strukturzugreifen muss, damit ich sie angezeigt bekomme. Gruß noob
  12. Hi Klotzkopp, vielen Dank für deine Hilfe. Das war die Lösung. Hab mich nur mal wieder etwas doof angestellt. Gruß
  13. Hi Klotzkopp, versuche es mal genauer zu beschreiben. Wenn ich die Messagebox so verwende, wie ich sie gepostet hab, dann bekomme ich eine Fehlermeldung und zwar folgende: "Das Argument Prompt kann nicht in den Typ String umgewandelt werden." Und mein Problem ist jetzt, dass ich keine Ahnung habe, wie ich auf den Returnwert der Funktion ValidateXml zugreifen soll. Beste Grüße noobvb.net
  14. Hi Leute, steh heute irgendwie auf dem Schlauch. Ich möchte einen Returnwert in einer Messagebox ausgeben. Bekomme es aber irgendwie nicht hin. Ich habe folgende Funktion: Public Function ValidateXml(ByVal RawXml As String) As List(Of String) ErrorList = New List(Of String) If Me.Schemas.Count > 0 Then Dim ReaderSettings As New XmlReaderSettings() With ReaderSettings .ValidationType = ValidationType.Schema .ValidationFlags = XmlSchemaValidationFlags.ProcessSchemaLocation Or XmlSchemaValidationFlags.ReportValidationWarnings Or XmlSchemaValidationFlags.AllowXmlAttributes For Each SchemaPath As String In Me.Schemas .Schemas.Add(Nothing, XmlReader.Create(SchemaPath, Me.SchemaSettings)) Next AddHandler .ValidationEventHandler, SchemaValidation End With Using Reader As XmlReader = XmlReader.Create(New StreamReader(RawXml), ReaderSettings) '(New StringReader(RawXml), ReaderSettings) While Reader.Read() MsgBox(Reader.LocalName) MsgBox(Reader.Value) 'Lies das gesamte File und ruft die Validierungs Handler Subrutine auf, 'wenn ein Fehler gefunden wird. Auf diese Weise ist es möglich alle 'Fehler des XML-Files zu ermitteln, anstatt bei jedem Fehler zu stoppen. End While End Using End If Return ErrorList End Function diese befindet sich in der Klasse XMLValidator. Den Aufruf des Returnwerts in einer Messagebox habe ich folgendermaßen umgesetzt:MsgBox(openclass.ValidateXml(Pfad)) Kann mir jemand sagen, was ich falsch mache. Beste Grüße noobvb.net
  15. Hi Leute, habe mittlererweile den Fehler gefunden. Ich habe die falsche Klasse für mein Problem verwendet. Musste einfach Using Reader As XmlReader = XmlReader.Create(New StringReader(RawXml), ReaderSettings) durchUsing Reader As XmlReader = XmlReader.Create(New StreamReader(RawXml), ReaderSettings) ersetzen. Der Grund dafür ist auch recht simpel. Die StringReader-Klasse erwartet ein XML-File in Form eines Strings. Die StreamReader-Klasse hingegen erwartet einen Pfad. Beste Grüße noobvb.net
  16. Hi Leute, hab mal wieder ein Problem. Ich habe folgende Klasse, mit der ich eine XML-Datei gegen ein XML Schema prüfen möchte, aber ich bekomme ständig die Fehlermeldung, dass ich Ungültige Daten auf Stammebene. Zeile1, Position 1 habe. Kann mir aber nicht vorstellen, woran der Fehler liegt. Hatte vielleicht jemand von euch schon das selbe Problem und kennt die Lösung? Die Klasse Public Class XmlValidator Private ErrorList As List(Of String) Private SchemaList As List(Of String) Private SchemaReaderSettings As XmlReaderSettings Private SchemaValidation As ValidationEventHandler 'Instanzieren der XmlValidator Klasse Public Sub New() SchemaList = New List(Of String) SchemaReaderSettings = New XmlReaderSettings() SchemaValidation = New ValidationEventHandler(AddressOf ValidationHandler) End Sub ' Bereitstellen der Einstellungen während der Validierung Public ReadOnly Property SchemaSettings() As XmlReaderSettings Get Return SchemaReaderSettings End Get End Property ' Liste mit absoluten Pfadangaben zu den Schemas, gegen die geprüft werden soll Public ReadOnly Property Schemas() As List(Of String) Get Return SchemaList End Get End Property 'Validiert die gegebenen XML-Strings gegen das Schema ''' <param name="RawXml">Die rohen XMl Daten, die validiert werden sollen</param> ''' <returns>Allgemeine Liste von Fehlermeldungen</returns> Public Function ValidateXml(ByVal RawXml As String) As List(Of String) ErrorList = New List(Of String) If Me.Schemas.Count > 0 Then Dim ReaderSettings As New XmlReaderSettings() With ReaderSettings .ValidationType = ValidationType.Schema .ValidationFlags = XmlSchemaValidationFlags.ProcessSchemaLocation Or XmlSchemaValidationFlags.ReportValidationWarnings Or XmlSchemaValidationFlags.AllowXmlAttributes For Each SchemaPath As String In Me.Schemas .Schemas.Add(Nothing, XmlReader.Create(SchemaPath, Me.SchemaSettings)) Next AddHandler .ValidationEventHandler, SchemaValidation End With Using Reader As XmlReader = XmlReader.Create(New StringReader(RawXml), ReaderSettings) While Reader.Read() 'Lies das gesamte File und ruft die Validierungs Handler Subrutine auf, 'wenn ein Fehler gefunden wird. Auf diese Weise ist es möglich alle 'Fehler des XML-Files zu ermitteln, anstatt bei jedem Fehler zu stoppen. End While End Using End If Return ErrorList End Function Private Sub ValidationHandler(ByVal sender As Object, ByVal e As System.Xml.Schema.ValidationEventArgs) If e.Severity = XmlSeverityType.Error Then ErrorList.Add(e.Message) End If End Sub End Class Der Dazugehörige Aufruf Private Sub Button1_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Dim openclass As New XmlValidator Dim Pfad As String Dim SchemaLocation As String Pfad = "PfadzurXMLDatei" SchemaLocation = "PfadzurSchemadatei" openclass.Schemas.Add(SchemaLocation) openclass.ValidateXml(Pfad) MsgBox(openclass.Schemas) End Sub End Class Und die dazugehörigen Schema und XMl Files Schema: <?xml version="1.0" encoding="utf-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name ="security"></xs:element> <xs:element name="password"> <xs:simpleType> <xs:restriction base="xs:string"> <xs:minLength value ="8"/> </xs:restriction> </xs:simpleType> </xs:element> </xs:schema> XML-File: <?xml version="1.0" encoding="utf-8" ?> - <security xmlns:xs="http://www.w3.org/2001/XMLSchema-instance" xs:noNamespaceSchemaLocation="testschema.xsd"> <password>abcdefgh</password> </security> Vielen Dank schon mal im Voraus Gruß noob
  17. hi Amstelchen, vielen Dank für deine Antwort. Ja, das habe ich gefunden, aber da es ab .net 2.0 obsolet ist, kann ich das nicht anwenden. Gruß
  18. Hi Leute, hab mal wieder ein Frage. Ich möchte ein XML Dokument gegen ein XML Schema validieren. Hat das hier schonmal jemand gemacht? Ich steh da irgendwie gerade auf dem Schlauch. Kann mir vielleicht jemand erklären, wie man das macht. Hab auch schon gegoogled, werd aber irgendwie nicht schlau aus den Beispielen. Gruß noob
  19. Hi Kosinator, vielen Dank für deine Hilfe. Aber irgendwie ist das nicht ganz, was ich gesucht habe. Hab es jetzt über das TabControl-Tool realisiert. gruß noob
  20. Hallo Leute, hab mal ne Frage an euch. Kann mir jemand sagen, wie man in vb.net eine ausklappbare Oberfläche erzeugt? Ich möchte eine GUI erzeugen, die mehrere voneinander getrennte Aufgaben erledigen kann. Da die Aufgaben nichts miteinander zutun haben, soll dem Benutzer immer nur das angezeigt werden, was er aktuell zur Bearbeitung benötigt. Ich habe in der Toolbox nachgeschaut und da habe ich das Tool "SplitContainer" gefunden, hier ist aber nur eine vertikale Trennung möglich ich hätte aber gerne eine horizontale. Kennt sich jemand mit so etwas aus? Gruß noobvb.net
  21. Hi TDM, über das Statement "Select table_name from information_schema.tables where table_type= 'Base Table'" kannst du alle in der DB vorhandenen Tabellen ermitteln. Beim SQL Server sollte auch SELECT * FROM sys.tables funktionieren. Gruß noobvb.net
  22. Hi TDM, vielen Dank für den Tip. Hab es mittlererweile über ein SQL-Statement gelöst. Gruß noobvb.net
  23. Hi Leute, kann mir jemand sagen, wie ich die Tabellennamen mit vb.net innerhalb einer MS SQL Server Datenbank ermitteln kann? Ich habe das Problem, dass ich ein Drop Down Menü erstellen möchte, das alle meine Tabellen enthält. Habe aber keine Ahnung, wie ich auf die Tabellennamen zugreifen kann. Gruß noobvb.net
  24. Hi Leute, vielen Dank für eure Hilfe. Es haben nur ein paar eckige Klammern gefehlt. Wäre nie drauf gekommen, dass das am Tabellenname liegen könnte. Vielen Dank nochmal. Gruß
  25. Hi Simon, vielen Dank für deine Hilfe. Da ich keine Ahnung hatte, wie ich in vb.net eine DB Verbindung herstelle, habe ich gegooglet und da hab ich eben in einem Ebook diesen Weg gefunden. Deshalb der Typ DBConnect. Der Fehler tritt bei der Fill-Funktion auf. Dort steht dann: "Fehler in der Nähe von "-" entdeckt". Gruß Manuel

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...