Das ; in die Zwischanablage kopieren

Hallo,
Ich würde gerne befehle in die Zwischenablage Kopieren und die funktioniert nich weil dieses Zeichen ; sich nicht mitkopieren lässt.
Sondern nur eine fehlermeldung ausspuckt. bis jetzt sieht das ganze so aus.
Wie kann ich das ; mitkopieren?

Public Class Form1
Dim B1 As String = „fs_game mods/1887Akimbo; vid_restart“
'Das ; sorgt immer für eine Fehlermeldung wie kann ich es mitkopieren
Dim B2 As String = „fs_game mods/AC130; vid_restart“
Dim B3 As String = „fs_game mods/Ace; vid_restart“
Dim B4 As String = „fs_game mods/AdvancedWarfare; vid_restart“
Dim B5 As String = „fs_game mods/AlienvsPredator; vid_restart“
Dim B6 As String = „fs_game mods/Bots; vid_restart“
'Dim B7 = „7“
'Dim B8 = „8“
'Dim B9 = „9“
'Dim B10 = „10“
'Dim B11 = „11“
'Dim B12 = „12“
'Dim B13 = „13“
'Dim B14 = „14“
'Dim B15 = „15“
'Dim B16 = „16“
'Dim B17 = „17“
'Dim B18 = „18“
'Dim B19 = „19“
'Dim B20 = „20“
'Dim B21 = „21“
'Dim B22 = „22“
'Dim B23 = „23“
'Dim B24 = „24“
'Dim B25 = „25“
'Dim B26 = „26“
'Dim B27 = „27“
'Dim B28 = „28“
'Dim B29 = „29“
'Dim B30 = „30“
'Dim B31 = „31“
'Dim B32 = „32“
'Dim B33 = „33“
'Dim B34 = „34“
'Dim B35 = „35“
'Dim B36 = „36“
'Dim B37 = „37“
'Dim B38 = „38“
'Dim B39 = „39“
'Dim B40 = „40“
'Dim B41 = „41“

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label1.Text = B1
Clipboard.Clear() ’ Löscht den Inhalt der Zwischenablage
Clipboard.SetText(B1) ’ Kopiert den Inhalt in die Zwischenablage
'Button1.Location = New Point(
'Button1.Location.X + 20,
'Button1.Location.Y)
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Label2.Text = B2
Clipboard.Clear() ’ Löscht den Inhalt der Zwischenablage
Clipboard.SetText(B2) ’ Kopiert den Inhalt in die Zwischenablage
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
Label3.Text = B3
Clipboard.Clear() ’ Löscht den Inhalt der Zwischenablage
Clipboard.SetText(B3) ’ Kopiert den Inhalt in die Zwischenablage
End Sub

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Label4.Text = B4
Clipboard.Clear() ’ Löscht den Inhalt der Zwischenablage
Clipboard.SetText(B4) ’ Kopiert den Inhalt in die Zwischenablage
End Sub

Private Sub Button5_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button5.Click
Label5.Text = B5
Clipboard.Clear() ’ Löscht den Inhalt der Zwischenablage
Clipboard.SetText(B5) ’ Kopiert den Inhalt in die Zwischenablage
End Sub

Private Sub Button6_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button6.Click
Label6.Text = B6
Clipboard.Clear() ’ Löscht den Inhalt der Zwischenablage
Clipboard.SetText(B6) ’ Kopiert den Inhalt in die Zwischenablage
End Sub

End Class

Schonmal vielen dank im Vorraus.

@Mod Falsches Brett

Ich würde gerne befehle in die Zwischenablage Kopieren und die
funktioniert nich weil dieses Zeichen ; sich nicht mitkopieren
lässt.
Sondern nur eine fehlermeldung ausspuckt. bis jetzt sieht das
ganze so aus.

Hallo Shrek14,

Und die Fehlermeldung hat meist eine Nummer, einen Text, in welcher Codezeile tritt sie auf .

Gruß
Reinhard

[off-topic Inhalt gelöscht - MOD]

Stimmt ich bin im brett verrutscht bitte löschen

‚,‘ in die Zwischenablage

Stimmt ich bin im brett verrutscht bitte löschen

Hallo Shrek,

nein, jetzt biste im richtigen Brett, mein Betreff galt für das VB-Brett. Das ist doch .Net Code?*glaub*

Gruß
Reinhard

Hallo!
Der Fehler liegt bestimmt wo anders - das „;“ ist ein Zeichen wie jedes andere auch und wird als solches in die Zwischenablage kopiert.
Du kannst es ja z.B. dadurch überprüfen, dass Du anschließend in einem Notepad Ctrl+V drückst, dann erscheint der ganze Text.

Welche Meldung gibt es denn genau?
Ohne die bleibt es der Blick in die (sehr trübe) Kristallkugel.

Gruß,
Martin

nein ist Visual Basic Code.
Aber in der Zwischenzeit konnte ich das Problem mit dem ; Lösen. es lag dem nschein nach an einem fehler von Visual Studio 2010 welcher auch erst beim Debuggen auftrat und dies in Unregelmäßigen abständen wieder tut.

Hallo Shrek,

nein ist Visual Basic Code.

mag Definitionssache sein. Ich lese im VB-Brett mit, Code mit so einer seltsamen Syntax bei „Dim“, da bist du der erste.
Jedenfalls sowas geht nicht in VB5.0.

Insofern sah ich für dich da im VB-Brett schonmal keine große Möglichkeit daß dir dort jemand helfen kann der z.B. VB6.0 kann.
Der Mod dort sah das genauso und hat dich verschoben. Nix Böses,
Lese dazu bitte auch die Brettbeschreibung vom VB-Brett.
Er sah wie ich da im .Net-Brett größere Hilfschancen.

Aber in der Zwischenzeit konnte ich das Problem mit dem ;
Lösen. es lag dem nschein nach an einem fehler von Visual
Studio 2010 welcher auch erst beim Debuggen auftrat und dies
in Unregelmäßigen abständen wieder tut.

„Unregelmäßigen abständen“ ist immer ein sehr mistiger Fehler:smile:
Sehr aufwendig überhaupt dem Fehlergrund auf die Spur zu kommen.

Gruß
Reinhard

ok den Kopierfehler jabe ich behoben und das Programm läuft soweit.
Dafür stürzt öftersmal der Windos explorer mit der Meldung „Windows Explorer funktioniert nicht mehr“ ab und dann kommt „Windows Explorer wird neu gestartet“ kann diser fehler seinen Ursprung in meinem Programm haben?
Vielen dank im Vorraus


Dim B1 As String = „fs_game mods/1887Akimbo; vid_restart“
'Das ; sorgt immer für eine Fehlermeldung wie kann ich es
mitkopieren

Hoi shrek14,

ich würde dir grundsätzlich vorschlagen, dass alles was ein Sonderzeichen in einem String ist, zu escapen, sprich ein \ voranzustellen (ausser Umlaute…).
Bin zwar kein VB-ler (die alten „VB x-6.0 Hasen“ brauchen jetzt nicht wegen VB.Net meckern :wink:), aber der Code müsste in etwa so aussehen:

Dim B1 As String = "fs\_game mods\/1887Akimbo\; vid\_restart"

Aber die Compiler-, bzw. einfach nur Fehlernummer (oder die Meldung!) hilft oft mehr weiter als du vllt. denkst (VS bietet auch die Möglichkeit des Einzelschritt-Debuggings: Taste F10 / F11, manchmal erfährt man hier auch mehr, da man einzelne Variablen-Werte angezeigt bekommen kann).

Was dein Explorer-Absturz-Problem angeht, solltest du vllt. mal einen AV-Scan machen :wink:

Ich hoffe dir hilfts weiter…

Greetz, me

Ok in der nicht immer auftretenden Fehlermeldug steht
"ExternalException wurde nicht behandelt.
Der angeforderte Clipboard-Vorgang war nicht erfolgreich.

Wenn du mit AV-Scan Antivirusscan meinst habe ich das gemacht.

Hallo!
Dieses Verhalten hat überhaupt nichts mit dem konkreten Inhalt des Strings zu tun, den Du ins Clipboard packen willst.
Es passiert vielmehr dann, wenn ein anderer Thread noch Zugriff auf das Clipboard hat, dann kann Dein Code nämlich nicht darauf zugreifen (etwas vereinfacht).
Da das Problem durch das Zusammenspiel mit einem anderen Programm/Thread hervorgerufen wird, ist es auch nicht immer reproduzierbar, sondern tritt nur sporadisch auf.
Als Lösung könntest Du bspw. eine eigene ClipboardEx (oder so) Klasse implementieren und dort das Paste so überschreiben, dass es das Einfügen mehrfach versucht, wenn eine Exception kommt.
Solche Zugriffsprobleme sind meist nur von kurzer Dauer, so dass ein paar ms später das Ganze wieder klappt.

Du findest im Netz übrigens haufenweise Artikel zum Thema, wenn Du bspw. nach „clipboard setdataobject externalexception“ googelst. Eben mit der konkreten Exception, die geworfen wird. Mit dieser Vorgehensweise findest Du meistens was.

Gruß,
Martin

Hallo!
Nix für ungut, aber der Tip mit dem Escapen von ganz normalen Zeichen ist Unsinn. Es gibt ein sehr kleines, fest definiertes Set von Zeichen, die in Sprachen mit C-ähnlicher Syntax escaped werden können. Aber hier handelt es sich weder um eine solche Sprache, sondern um VB.NET und außerdem gehören weder ‚/‘ noch ‚;‘ zu den escapebaren Zeichen.
(zum Nachlesen: http://de.wikipedia.org/wiki/Escape-Sequenz)

Gruß,
Martin