Zum Inhalt springen

steinadler

Mitglieder
  • Gesamte Inhalte

    448
  • Benutzer seit

  • Letzter Besuch

Alle Inhalte von steinadler

  1. Hallo ihr Lieben, wie bekomme, oder bekomme ich überhaupt, einen formatstring (also "Standard Numeric Format Strings") in ein Objekt gewandelt, welches IFormatProvider imlementiert? Danke
  2. Hm, hatte das erst so gedacht: Ein Timer, der den Takt vorgibt und einen Arbeitsthread anstößt. Jetzt hab ichs aber anders gemacht: Ich habe nur noch einen Thread und messe die Zeit, wie lang er braucht, dann leg ich ihn für die Restzeit (zum obigen Timertakt, nur jetzt ohne Timer) schlafen. Geht. Danke euch allen.
  3. Hallo ihr Lieben, ich möchte eine Methode zyklisch ausführen. Dabei dachte ich ja an einen Timer. Aber wie bekommt in den Griff, wenn die Methode länger dauert als der Timerzyklus? Grüße Steinadler
  4. Hallo ihr Lieben, gibt es im VisualStudio (2010 Express) eine elegante Möglichkeit ein Interface einzubinden, wo mir die Methodenrümpfe automatisch erstellt werden? Damit ich nicht alles per Hand schreiben muss? Grüße steinadler
  5. Vielen Dank für eure Anregungen. Habe dadurch nun eine Möglichkeit gefunden.
  6. Nimm doch den Punkt aus den Regex raus und prüfe direkt den KeyCode aus den EventArgs.
  7. Hallo ihr Lieben, ich möchte eine Eigenschaft eines Objektes über einen Thread zyklisch mit Daten füllen. Aus dem Formular möchte ich dann gern auf diese Daten zugreifen. Wie bekomme ich das denn am elegantesten synchronisiert? Das Objekt selber wird im Formularthread (Hauptthread) erzeugt. Mit OnChanged-Events ist das kein Problem, aber ich dachte eher daran, dass das Formular zyklisch per Timer aufgefrischt wird. Wenn ich jetzt aber zu einem ungünstigen Zeitpunkt (während das Objekt vom Thread gefüllt wird), vom Formular die Eigenschaft des Objektes abfrage, kann dann doch ein nicht definiertes Ergebnis rauskommen. Reicht das, wenn ich um Get/Set der Eigenschaft ein lock{} baue? Edit: "Invoke im Formularcode möchte ich gern umgehen, da das ganze in eine DLL ausgelagert werden soll"
  8. Das ist das, wie ich es jetzt realisiert habe, nur dass das Kind dadurch einen Namen bekommen hat ;-) Ich geb dann den Objekten trotzdem das ganze Byte-Abbild referenziell mit und jedes Objekt holt sich daraus dann die entsprechenden Daten die es braucht. Richtig?
  9. Ich bekomme immer ca. 5000 Bytes. Und tatsächlich interessieren mich dann alle enthaltenen Werte, Integer, Bytes, Strings, von welchen ich wiederum weiß, an welcher Stelle des datenabbildes sie liegen und wieviele Bytes sie jeweils einnehmen.
  10. Also müsste ich das ganze Array durchlaufen und jedem Objekt die richtigen Werte zuweisen/zucasten?
  11. Windows Forms. Den Datenstrom kann ich nicht verändern. Ich bekomme immer ein Byte-Array fester Länge zurück. Anhand einer Tabelle weiß ich, an welcher Position im Abbild die Daten stehen müssen. Meines Erachtens nach brauche ich eine Zwischenschicht, die daraus typsichere Objekte generiert. Möglich wäre im Prinzip ein Objekt mit folgenden Eigenschaften zu erstellen: object Wert; int IndexImAbbild; ref byte[] Abbild; dann könnte das Objekt selbst seine Daten aus dem Abbild holen. Aber ich dachte an eine Möglichkeit, dem Objekt nicht das gesamte Abbild übergeben zu müssen sondern nur ab einer bestimmten Adresse - quasi den relevanten Teil. Ich wollte gerne aus Performancegründen vermeiden, dass ich das Byteabbild mit einer Schleife durchkaspern muss.
  12. Dann muss ich aber die gesamte Auswertelogik in meinem Formular machen, das wollte ich eigentlich nicht.
  13. Gut, also anders gefragt: Wie kann ich elegant aus einer Oberfläche auf Werte zugreifen, die mit unterschiedlicher Länge in einem Datenabbild welches zyklisch über die serielle Schnittstelle eingelesen wird, liegen?
  14. Das bekomme ich von einer seriellen Schnittstelle, welche mir aller paar Sekunden diese Daten sendet.
  15. Also nochmal: Ich habe ein Byte-Array mit z.B. 100 Werten (Index 0..99). Ab Index 0 liegt ein Byte, ab Index 1 Liegt ein 32-Bit-Int und ab Index 5 liegt ein String, welcher aus 12 Bytes besteht. Also sieht mein Array folgendermaßen aus array[0] -> Byte0 array[1] -> Int0 array[2] -> Int0 array[3] -> Int0 array[4] -> Int0 array[5] -> String0 array[6] -> String0 array[7] -> String0 array[8] -> String0 array[9] -> String0 array[10] -> String0 array[11] -> String0 array[12] -> String0 array[13] -> String0 array[14] -> String0 array[15] -> String0 array[16] -> String0 array[17] -> String0 Ich habe eine Klasse angelegt, welche einen beliebigen Wert wiedergeben kann (Typ object). Die Bitlänge ist per Konstruktor angebbar. Und über Instanzen dieser Klasse möchte ich dann auf den Inhalt des Datenabbildes zugreifen. Nur bin ich mir nicht sicher, wie ich am klügsten der Instanz ihren Bereich im Datenabbild zuweise. Von höherer Stelle möchte ich dann z.B. sagen label1.Text = IntObject.Value.ToString(); und IntObject müsste dann den Wert an Stelle x im Datenabbild zurückgeben.
  16. Aber wie bekomme ich die Zuordnung von [byte im Datenabbild] und dem [zugehörigen Objekt bestimmter Länge] hin? PropertyChanged würde ich dann in meiner Objektklasse aufrufen.
  17. Ich habe einen Byte-Abbild vorliegen. Da drin liegen an bestimmten Adressen 8/16/32-Bit-Werte. In meinem Projekt, möchte ich diese Daten nun auf meine Objekte innerhalb der Klassenstruktur mappen, sprich wenn sich das zugehörige Byte im Datenstrom ändert, soll sich auch der Wert in meinem Objekt ändern. Eine Referenz auf ein einziges Byte ist kein Problem, aber ich möchte ja auch Werte aus dem Datenstrom nutzen, die größer ein Byte sind. Darum dachte ich, ich könnte einfach pro Objekt eine Startadresse im Byte-Abbild zuweisen und innerhalb des Objektes dann die gewünschte Anzahl Bytes ab dieser Adresse nutzen. In C hätte ich es so gemacht. Aber in C#?
  18. Hallo ihr Lieben, ich habe ein Byte-Array mit Daten. Nun möchte ich einer Funktion einen Zeiger auf eine Adresse in diesem Array übergeben. Innerhalb dieser Funktion möchte ich dann ein Array auf diese Adresse mappen (nur n Byte ab der angegebenen Adresse). Geht sowas nur mit unsafe oder gibt es einen eleganteren Weg? Grüße Steinadler
  19. steinadler

    nvarchar in int

    Für MS SQL: SELECT CHARINDEX('j', tb_Glossar.Status) gibt bei ja = 1 zurück, bei nein 0.
  20. steinadler

    nvarchar in int

    Hallo Jana, was soll denn in dem Int-Wert dann stehen? 0 und 1?
  21. Komischerweise tritt das Problem aber nur auf, wenn ich das Formular der DLL in der Main() selbst aufrufe. Rufe ich das Formular im Konstruktor des Programmformulars auf, funktioniert alles bestens. Auch der Try-Catch Block um die Application.Run()-Funktion in der Main(). Die DLL ist natürlich als Verweis eingebunden. Also prüft er beim Programmstart doch nicht alle eingebundenen Verweise???
  22. Das sieht eher so aus, als ob in der SQL-Anweisung direkt ein String "nvarchar" übermittelt würde. Poste doch mal den Code, wo du das Gridview mit den Parametern verbindest. (PS: Du hast ne priv. Nachricht ;-) ) EDIT: Versuch doch mal, bei WHERE id=... eine ID per Hand einzutragen also WHERE ID = 5 oder so
  23. Versuch doch mal das: <UpdateParameters> <asp:Parameter Name="Bezeichnung" Type="String"/> <asp:Parameter Name="Beschreibung" Type="String"/> <asp:Parameter Name="Status" Type="String"/> <asp:Parameter Name="Thema" Type="String"/> <asp:Parameter Name="id" Type="Int32"/> </UpdateParameters> hat jemand ne idee? danke

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...