Wie kann ich feststellen ob ein System.Threading.Timer gestartet bzw. gestoppt wurde, wenn die reguläre Zeit von dem Timer noch nicht abgelaufen ist?
Ich nutze einen Timer in meinem Sourcecode, den ich sehr häufig starte, und auch vorzeitig beende. Gibt es für so etwas einen Eventhandler? Wie kriege ich den aktuellen Zustand von meinem Timer heraus, außer in der eigentlichen Callback Routine z.B. einen Boolwert zu initialisieren?
Hallo san-software,
mein Quelltext befindet sich nicht auf einem USB Laufwerk, sodass dies nicht die Ursache des Problems sein kann. Trotzdem Danke für deine Anregung!
Ich habe seit längerem das Problem, dass wenn ich mit der Entwicklungsumgebung Visual Studio 2005 Einzeldebugging (Taste F10, oder F11) im Sourcecode ausführen will, mein Programm blockiert und ich nicht einmal eine Zeile debuggen kann. Ich muss jedes Mal meine USB Verbinung zum Gerät abziehen, damit VS 2005 sich von diesem Fehlerfall erholt.
Es kommt immer die Fehlermeldung
Fehler
Microsoft Visual Studio ist ausgelastet,... wartet auf den Abschluss eines interen Vorganges.
Fehler
Für die aktuelle Position ist kein Quellcode verfügbar!
erscheint, nach dem ein Neustart des Gerätes erfolgte und der Unterbrechung der USB Verbindung passierte.
Selbst bei den Debugging Einstellungen habe ich nach etwas gesucht um die Fehler zu legalisieren, aber bis jetzt ist keine Verbesserung in Sicht.
Kann mir jemand weiterhelfen, um die Ursache meines Problems zu lösen?
Für den Aufbau meiner Software verwende ich das OpenNETCF Smart Device Framework mit der Version 2.0. Diese Version beinhalt für die List Item Klasse leider nicht die Tag-Eigenschaft, die jedoch in der neuesten Version 2.3. schon Bestandteil ist.
Leider kann ich derzeit nicht so schnell auf die höhere Version wechseln, würde allerdings gerne meine von OpenNETCF (Version 2.0) bereitgestellte Klasse um das Object erweitern. Kann mir jemand dabei unterstützen, wie ich die Tag-Eigenschaft integrieren kann?
Ich empfange 1000 Bytes und muss innerhalb von 20ms eine Antwort bzw. eine erfolgreiche Qutting (nach Überprüfung der Checksumme) darauf senden. In der Regel kann ich in 80% aller Falle diese auch erfolgreich senden, allerdings sind die anderen 20% auch wichtig.
Ich vermute das mein WinCE Betriebssystem bei Änderung der Thread Priorität dies auch schaffen wird. Oder was meint Ihr?
kann ich die Versionsnummer intern in meinem Programm auslesen.
Sobald ich aber eine Exe Datei kompiliert habe, möchte ich gerne die Versionsnummer durch anklicken auf die Datei (rechte Maustaste, Eigenschaften, Version) die Information abfragen. Überlicherweise steht dort Assembly Version 0.0.0.0, Dateiversion 0.0.0.0., etc. Irgendwie kann man doch bestimmt diese nützliche Eigenschaften verwenden, oder?
Ich möchte gerne in meinem C# Quellcode die Assembly Versionsnummer hinterlegen, sodass ich bei Compilierung meiner Software, später diese Eigenschaft an der Exe Datei mir anschauen kann.
[assembly: AssemblyVersion("1.1.0.88")]
Was muss ich in meinem Sourcecode programmieren, damit die Assembly Version sichtbar wird? Hat jmd einen Ansatz für mich?
Leider finde ich aber keine logische Erklärung warum der Eventhandler nicht ausglöst wird.
private void TreeView1_AfterSelect(System.Object sender,
System.Windows.Forms.TreeViewEventArgs e)
{
// Vary the response depending on which TreeViewAction
// triggered the event.
switch((e.Action))
{
case TreeViewAction.ByKeyboard:
MessageBox.Show("You like the keyboard!");
break;
case TreeViewAction.ByMouse:
MessageBox.Show("You like the mouse!");
break;
}
}
Das TreeView Element habe ich einfah per Drag & Drop auf meine Form gelegt und ein paar Nodes eingefügt. Bei Auswahl eines dieser Nodes löst der Event nicht aus.
Ist vlt nur eine Kleinigkeit in den Einstellungen derEigenschaften des TreeView Elements. Allerdings fällt mir zur Zeit nichts ungewöhnliches auf, dass die Blockierung der Funktion behindern könnte.
Habt Ihr ne Idee warum der Trigger für das Event nicht kommt??
Ich habe in einer Klasse X die folgende Definition:
public class X
{
public static int InfoPort;
public static String strIP = "192.168.1.100";
private static IPEndPoint test = new IPEndPoint(ip, InfoPort);
}
In einer weiteren anderen Klasse Y möchte ich jetzt InfoPort einen Wert übergeben.
public class X
{
}
Der Integer muss static sein! Dies ist aufgrund des IPEndPoint notwendig.
Wie kann ich jetzt einen Wert in der Klasse X, für die Klasse Y übergeben.
Kann mir jemand helfen? Brauche dringend eine Lösung! Vielen Dank.
Ich benötige für mein neues Softwareprojekt einen Button, der zwei Labels mit unterschiedlichen Schriftgrößen beinhaltet. Jemand ne Idee, wie ich das am besten realisieren kann?
Ich nutze von OpenNETCF das Smart Device Framework V2.3. Idealerweise würde ich den Typ "Button2" um die beiden Labels ergänzen. Freue mich auf Anregungen oder Lösungsvorschläge...
Ich habe gerade ein neues WindowsForms-Anwendung Projekt angelegt. In diesem neuen Projekt war das UserControl in der Toolbox.
Das andere Projekt, wo ich versuche das UserControl einzubinden war kein WindowsForms-Anwendung Projekt sondern ein "Projekt für intelligente Geräte".
In diesem Projekt habe ich dann ein Windows Forms Element hinzugefügt!
Und irgendwo dort gibt es eine Differenz, warum diese Toolbox das UserControl nicht akzeptiert.
In einem Projekt habe ich meine UserControl erstellt. Dieser UserControl möchte ich gerne in dem anderen Projekt in dessen Toolbox verwenden.
Projekt 1: UserControl wurde erzeugt und ist auch in der Toolbox sichtbar! Alle bestens!
Projekt 2: Das im Projekt 1 erzeugte UserControl lässt sich nicht in die Toolbox des Projektes 2 einbinden. Ich kann das UserControl über die "Toolboxelemente Liste auswählen", aber es wird nicht dargestellt.
Dafür suche ich die Lösung meines Problems..
@Th69: Ich überprüfe deine Aussage "auf Erfolg mal eben"!
[ToolboxBitmap(typeof(StatusLabel), "Resources.ANT.bmp")]
public partial class StatusLabel : UserControl
{
public StatusLabel()
{
InitializeComponent();
}
}
In meiner Projektdatei habe ich den Ordner Resources angelegt und dort das Bitmap ANT.bmp hinterlegt.
Warum erscheint in einem neuen Projekt das User Control nicht in der Toolbox, außer in dem Projektordner mit ich das UserControl erstellt wurde? Wieso funktioniert dies einfach nicht??
Ich habe mit VS 2008 ein von UserControl eigenes grafisches Element (Panel mit zwei Labels) erstellt. Jetzt möchte ich gerne dieses in einen anderen Projekt einbinden.
Ich kann dieses Element in der Toolbox über Extras-> Toolboxelemente auswählen-> .NET Frameworkkomponenten einbinden und der Name des UserControls erscheint auch in der Liste.
Soweit so gut. Was aber nicht passiert ist die optische Darstellung dieses Elementes in der Toolbox, so wie die anderen Controls sichtbar sind.
Jemand ne Idee, was die Ursache für den Fehler sein könnte?
Ich habe ich ein Header Datei die in C geschrieben ist. Diese Header Datei benötige ich jetzt für ein Programm das in C# geschrieben wurde. Gibt es eine Anleitung wie diese Konvertierung von der Programmiersprache C nach C# umsetzen kann?
Jetzt kann sich die Datei aufgrund eines Updates auch auf die "Version002a.exe" ändern.
Mit welchem Funktionsaufruf ist dies am einfachsten machbar? Im Prinzip ändert sich die Datei nur mit der Nummer. Der Pfad und das "Version----" bleibt statisch.
private Serial ComPort;
ComPort = new Serial("COM2:", 9600);
ComPort.Open();
ComPort.OnDataReceived += new Serial.OnDataReceivedEventHandler(OnData);
// Ca. 7 Sekunden Verzögerung beim Umstellen der Baudrate aufgrund Austausch der Anfangstelegramme
ComPort.Close();
ComPort.ComPort = "COM2";
ComPort.Baudrate = 38400;
ComPort.Open()
Bei der Initailisierung mit 9600 funktioniert der Empfang und das Senden der Daten,
bei der Umstellung auf 38400 funktioniert das Senden der Daten, aber der Empfang nicht mehr.
Kennt jemand möglich Ursachen, die in Verbindung mit dem C# Wrapper von CommBase.cs stehen?