Laden...
M
Benutzerbeschreibung

Forenbeiträge von moser69 Ingesamt 6 Beiträge

05.09.2019 - 09:29 Uhr

Als Eingangsdaten für meine Methode zum Extrahieren des DMC nehme ich momentan den Text von meiner TextBox.
Wenn ich jetzt die Ereignisse Ereignis PreviewKeyDown oder KeyPress verwende, dann ist der Text noch null - so habe ich keine Eingangsdaten für meine Methode.

Wie kann ich dann anders die Daten vom Scanner anfangen ?

05.09.2019 - 09:23 Uhr

Hi,

was ich meinte ist in folgendem Artikel beschrieben:

>

LG

Wenn ich versuche die Scanner Daten mit dem Ereignis PreviewKeyDown abzufangen - erkenne ich auch keine GS, … als ob sie vom Scanner gar nicht kommen.
Dann frage ich mich: was macht den Notepad++ dass ich sie sehen kann ?
Er musst sie irgendwie erkennen oder zumindest die Sacannerdaten mit den GS ergänzen … aber auch hier muss Notepad++ wissen wo sie hingehören …
Zu viele Sachen die ich nicht verstehe 😦

05.09.2019 - 09:10 Uhr

Wenn du den Text dann z.B. in eine Datei speicherst, siehst du dann mit einem Hexcode-Editor (oder z.B. Notepad++) dann die Steuerzeichen?

Wenn ich den Text von der TextBox (das was direkt vom Scanner kommt) in eine txt Datei speichere und die dann im Notepad++ öffne - sehe ich auch keine GS.

Vielleicht muss "nur" eine Eigenschaft der TextBox richtig gesetzt werden … ? 😦

05.09.2019 - 08:20 Uhr

Ich scanne den DMC direkt in die TextBox - erwarte aber nicht, dass die Separattoren angezeigt werden. Ich habe eine Methode, die mir den DMC zerlegen soll und die einzelnenn Datensegmente anhand der GS ausliest. Diese Methode funktioniert mit einem anderen Scanner, den ich aber aus unterschiedlichen Gründen für meine Applikation nicht verwenden kann.
Ich habe einen Cognex DM8050, und mit dem habe ich das beschriebene Problem.
Leider konnten mir bis jetzt die Cognex Experten auch nicht weiter helfen.

Hier die Methode die ich nutze:

public static class DmcIdentifires
    {

        /// <summary>Extracts the element identified by the given identifier from the complete label String. The sections
        /// need to be divided by group separators</summary>
        /// <param name="identifier">The identifier of the section.</param>
        /// <param name="completeLabel">The complete label</param>
        /// <param name="index">The start index in the label of this identifier</param>
        /// <returns></returns>
        public static string GetContentForIdentifier(string completeLabel, string identifier)
        {
            // match [GS]1P (as look-around), then any code but GS or RS and then GS or RS, again as look-around
            // \p{P} contains punctuation 
            // [\w-[\x1d\x1e]] any word element but the GS or RS separators
            string regExPatternString = "(?<=\\x1d" + identifier + ")[\\u0020\\p{P}\\w-[\\x1d\\x1e]]{2,}((?=\\x1e)|(?=\\x1d))";
            var regex = new Regex(regExPatternString,
                RegexOptions.IgnoreCase | RegexOptions.IgnorePatternWhitespace);
            var match = regex.Match(completeLabel);

            if (match == null || match.Length == 0)
            {
                return null;
            }
            else
            {
                return match.ToString();
            }
        }

    }
04.09.2019 - 15:14 Uhr

Hallo
so sieht der code aus - allerdings die GruppenSepparatoren (die Kästchen hier) sind erst in Notepad++ sichtbar.

[)>0613V6439559581P285164571630000P1009170332320P0021P1006273801122P0031P1006262629132P00S96189060002B10ZREFLASH11Z31627909012Z10521825605137

Gruß,
moser

30.08.2019 - 16:53 Uhr

Hallo Zusammen
ich eine GUI geschrieben wo als Eingangsdaten der Inhalt eine DMC übernommen werden soll. Leider werden die GS nicht erkannt … oder vom Scanner nicht übertragen (Cognex DM8050). Die Cognex Leute finden keine Lösung … 😦
Vielleicht liegt das aber auch an meiner Applikation …
!!! Und jetzt kommts: wenn ich den DMC in Notepad++ einscanne - sehe ich alles, inkl. GS, RS und EOT. Wenn ich jetzt diesen "Text" vom Notepad++ in meine GUI kopiere - funktioniert alles.
Als Eingangsfeld für die Scanner Daten nutze ich eine einfache TextBox … hier habe ich auch schon versucht einige Eigenschaften zu verändern - muss aber zugeben dass ich nicht alle kenne …
Programmiert habe ich in VS 2017 / C# / .NET FW 4.00

Ich würde mich über jeden Tipp / Lösung seeeehr freuen ! 😃

Gruß,
moser