Laden...

Forenbeiträge von JakeBlues Ingesamt 8 Beiträge

24.07.2006 - 07:51 Uhr

versuchs mal so. Ich habs allerdings noch nicht kompiliert, könnten schreibfehler drinn dein 🙂


public List<string> GetContent(string Target, int menuid)
{
	List<string> result = new List<string>();
	using(SqlConnection con = new SqlConnection("Data Source=ENDURANCE\\SQLEXPRESS; Initial Catalog= bonicontent;" + "Trusted_Connection=yes"))
	{
		con.Open();
		string strSQL = "SELECT Text FROM statcontent WHERE MenuID='" + menuid + "'";
        SqlCommand cmd = new SqlCommand(strSQL, con);
        SqlDataReader reader = cmd.ExecuteReader();
		while (reader.Read())
        {
			string sText = reader[0] as string;
			if(sText!=null)
				result.Add(sText)
		}
	}
	return result;
	// wenn unbendingt string[] dann :
	// return result.ToArray();
}

24.07.2006 - 07:40 Uhr

Vermutlich muss du einen eigenen UITypeEditor erstellen.

Schau erst mal hier
http://msdn2.microsoft.com/de-de/library/53c49eck.aspx
und hier
http://www.codeproject.com/csharp/PropertyEditor.asp

und dan bei google

19.07.2006 - 19:38 Uhr

oder so:


public class C<T> where T : new()
	{
		public C() { }

		public virtual T duplicate()
		{
			return new T();
		}
	}

	public class A : C<A>
	{
		public override A duplicate()
		{
			return base.duplicate();
		}
	}

	public class B : C<B>
	{
		public override B duplicate()
		{
			return base.duplicate();
		}
	}

19.07.2006 - 19:23 Uhr

Probier mal das 🙂 (man achte auf die Kommentare!!!)


private void pause()
		{
			DateTime d3 = Convert.ToDateTime(this.richTextBox3.Text);
			DateTime d4 = Convert.ToDateTime(this.richTextBox4.Text);
			TimeSpan ts1 = new TimeSpan(d4.Ticks - d3.Ticks);
			richTextBox9.Text = ts1.Hours.ToString() + ":" + ts1.Minutes.ToString() + ":" + ts1.Seconds.ToString();
			if (richTextBox12.Text.Length >= 1)
			{
				DateTime d5 = Convert.ToDateTime(this.richTextBox12.Text);
				TimeSpan ts2 = new TimeSpan(d5.Ticks);
				TimeSpan ts3 = (ts2 + ts1);
				richTextBox12.Text = ts3.Hours.ToString() + ":" + ts3.Minutes.ToString() + ":" + ts3.Seconds.ToString();
				// Hier ein return ansonsten wird ...
				return;
			}
			// .. hier deine Berechnung ÜBERSCHRIEBEN!!
			richTextBox12.Text = ts1.Hours.ToString() + ":" + ts1.Minutes.ToString() + ":" + ts1.Seconds.ToString();
		}

19.07.2006 - 07:41 Uhr

mal ne andere frage:
Wie werden die Daten die du sendest, auf der U-Boot seite den wieder in Steuerbefehle (z.B Motor an/aus) umgesezt? Da müsste ja ein Microcontroller sein der die Daten entschlüsselt? Wer Programmiert den eigentlich?

19.07.2006 - 07:34 Uhr

Hallo Pistenbully,

das mit den 8Bit hast du ein bisschen falsch verstanden, denke ich. Bei einer seriellen Datenübertragung versendest du immer Bytes. Diese Bytes bestehen natürlich aus 8Bit. Aber du kannst auch ganze Zeichenfolgen senden, also mehrere Bytes hintereinander. Darauf baut man ein Protokoll auf, welches sicherstellt das die übertragenenen DATEN (also mehrere Bytes) auch richtig angekommen sind. Dies stellt man mit eine Prüfsumme sicher. Eine Prüfsumme ist eine Mathematische funktion, die alles Bytes irgendwie zusammen rechnet und das ergebnis wieder an due Daten angehängt wird. Die gegenstelle rechnet ebenfalls die Prüfsumme aus und vergleicht ihr Ergebnis mit dem übertragenen Ergebnis. Ist das Ergebnis ungleich, so wird das Datenpacket nochmal angefordert.

Beispiel:
<STX> = Start of Text = 0x02
<ETX> = End of Text = 0x03
<NAK> = Not Acknowledge = 0x15
<ACK> = Acknowledge = 0x6
<BCC> = Der errechnete BlockCheck (Prüfsumme)

In diesem Beispiel muss der Sender die Daten nochmal übertragen da sie nicht richtig angekommen sind. Er sendet dan ein <NAK> anstelle eines <ACK>. Was zwischen <STX> und <ETX> steht ist ein ausgedachtes Protokoll:

Sender: <STX>'N''R''0''1''M''1''R''1''S''0''5'<ETX><BCC>
Empfänger: <NAK>
Sender: <STX>'N''R''0''1''M''1''R''1''S''0''5'<ETX><BCC>
Empfänger:<ACK>

18.07.2006 - 07:21 Uhr

Hallo Pistenbully,

wie gehts mit deiner U-Boot Steuerung vorann? Hast du dich schon für eine Vorgehensweise entschieden? Welches Protokoll möchtest du den für die Datenübertragung verwenden?

14.07.2006 - 07:49 Uhr

Hallo Pistenbully,

dein Projekt hört sich für mich interessant an. Du kannst C# für dein Projekt benutzen. Ich würde vieleicht DirectX benutzen um die Informationen vom Joystick zu bekommen, und über eine virtuelle serielle Schnittstelle (http://www.ircomm2k.de/) die Daten an den IR Port senden. Zugriff auf die Serielle Schnittstelle bekomst du über die .NET 2.0 Klasse System.IO.Ports.SerialPort.