Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von SGT_BOB
Thema: Zeilen in Textdatei schreiben
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo.

Ich meine der Fehler liegt dabei das du jedes mal die Datei neu erstellst und dabei die alte überschreibst.


FileStream fs = new FileStream(txtfilepath, FileMode.Create, FileAccess.Write);

muss in


FileStream fs = new FileStream(txtfilepath, FileMode.Append, FileAccess.Write);

umgewandelt werden dann sollte es funktionieren.

Mfg

SGT_BOB

Thema: Auf Objekt in Klasse zugreifen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo.

Erstmal ist das eine sehr grundlegende Frage und es scheint so als wäre bei dir das Grundwissen zum Thema OOP (objektorientierte Programmierung) nicht vorhanden. (Sorry falls ich mich irre) Ich kann an dieser Stellen nur folgende Seiten empfehlen http://www.galileocomputing.de/openbook/csharp/
http://www.galileocomputing.de/openbook/oo/

Zitat
1. Wie kann ich auf das Objekt datei zugreifen? Das Programm kennt den String nicht. Obwol die Klasse dem Projekt zugeordnet ist.

Hast du eine Instanz der Klasse erstellt???


using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;

namespace domination
{
    class DeineAnwendung
    {
        dbwork name = new dbwork();
    
    }
} 

Es sieht so aus als würde der Konstruktor fehlen.


using System;
using System.Collections.Generic;
using System.Text;

namespace domination
{
    class dbwork
    {
        string datei = Application.StartupPath + "\\domains.mdb";
    
        // default Konstruktor
        public dbwork()
        {

        }
    }
} 


Eine Möglichkeit wäre es den string auf public zu setzen:


using System;
using System.Collections.Generic;
using System.Text;

namespace domination
{
    class dbwork
    {
        public string datei = Application.StartupPath + "\\domains.mdb";
    
    }
} 

oder über die "get" und "set"-Direktive zu arbeiten:


using System;
using System.Collections.Generic;
using System.Text;

namespace domination
{
    class dbwork
    {
        string datei = Application.StartupPath + "\\domains.mdb";
    
        public string Datei
        {
            get{return datei;} // öffentlicher Zugriff lesen
            set{datei = value;} // öffentlicher Zugriff schreiben
        }
    }
} 

dann kannst du über so darauf zu greifen:


using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms;

namespace domination
{
    class DeineAnwendung
    {
        dbwork name = new dbwork();
        Console.WriteLine(name.Datei); // gibt den string "Datei" auf der Konsole aus
    }
}
Zitat
2. Er sagt mir immer ein Fehler bei Application... das erkennt er nicht sobald diese Anweisung in der Klasse ist. In der Hautform geht es.

Besser immer eine genauere Beschreibung bzw. die Exception oder Fehlermeldung beifügen.

Falls ich das jetzt nicht falsch verstanden habe, dann empfehle ich dir die Grundlagen anzueignen, sollten dabei Probleme auftreten, ist hier jeder gerne bereit zu helfen, wie du ja siehst.

Mfg

SGT_BOB

Thema: TME TileMapEditor
Am im Forum: Projekte

Hallo.

Da ich schon seit langem an der Spieleentwicklung interessiert bin, habe ich ich mich auch reichhaltig damit auseinander gesetzt und festgestellt, jedes "vernünftige" Projekt beginnt mit den Tools zum Erstellen des Spiels.

Also möchte ich euch heute hier meinen ersten nennenswerten Erfolg präsentieren, meinen TileMapEditor.

Basierend auf C#, dem .Net-Framework 2.0 und SdlDotNet 6.0.0.

Das Programm dient zum Erstellen von Maps die im späteren Spiel verwendet werden sollen. Gearbeitet wird auf drei verschiedenen Layern (Bottom = unter dem Spieler, Mean = gleiche Höhe wie der Spieler, Top = über dem Spieler).
Funktionen zum Zeichnen, Füllen (einzelnes Tile), Löschen (einzelnes Tile) Map erstellen/laden/speichern sind vorhanden und funktionieren auch.
Zwei Beispiel-Maps und diverse Grafiken sind beigefügt.

Selbstverständlich freue ich mich über entsprechendes Feedback

Bekannte Fehler/Probleme:
- Mapeinstellungen ist noch nicht implementiert, dadurch kann eine erstellte Map nicht mehr geändert werden
- beim Verlassen des Zeichenbereiches bleibt manchmal das Vorschaubild dargestellt
- ACHTUNG: Es sind noch nicht alle Sicherheitsabfragen vorhanden (speichern beim Verlassen des Programms)
- Bei gedrückter Maustaste auf dem Zeichenbereich ziehen, zeichnet zwar die Tiles auf den Bildschirm, speichert diese jedoch nicht in der Map-Datei ab


Falls ich irgendwas vergessen oder übersehen habe, dann könnt ihr mir das hier gerne posten, evtl. auch den Inhalt der DEBUG.TXT im "Data"-Verzeichnis.

Hier noch zwei Screenshots:





Und nun viel Spaß beim testen

SGT_BOB

Thema: hide form on load
Am im Forum: GUI: Windows-Forms

Zu deiner 2. Frage:

Zitat
Zitat:
Das Öffnen von Forms ist aber über das Kontextmenü nachträglich möglich.


Gibts dafür auch irgendwo einen Hinweis?

Form newForm = new Form();
Application.Run(newForm)? Oder irgendwas mit ApplicationContext?

Fast richtig.

Ein neues Form erstellen mit


Form form = new Form();

und mit


form.Show();

anzeigen.


Application.Run() bringt dich nicht weiter, da die Standardmeldungsschleife deiner Anwendung bereits läuft.

Mfg

SGT_BOB

Thema: hide form on load
Am im Forum: GUI: Windows-Forms

Hallo.

Wenn das mit dem Tray.Icon schon läuft brauchst du nur


this.WindowState = FormWindowState.Minimized;

im Konstruktor anzugeben.

Oder halt diese Eigenschaft im Designer einstellen.

Willst du deine Anwendung nicht in der Taskleiste angezeigt haben einfach dasselbe mit


this.ShowInTaskbar = false;

versuchen.

Dann wird die Anwendung minimiert gestartet und nicht in der Taskleiste angezeigt.

Mfg

SGT_BOB

Thema: Panel (Autosize) ändert seine Größe nicht
Am im Forum: GUI: Windows-Forms

Hi herbivore.

Ist für Windows.Forms.

Ich habe ein Panel (Autoscroll), darauf ein Panel (Autosize) und darauf ein SurfaceControl.

Hab jetzt ein wenig herumprobiert und es funktioniert wie es soll.

Hab SurfaceControl.Dock.Fill gesetzt und ändere jetzt im Programm einfach die Größe des Autosize-Panel, welches jetzt auch kein Autosize mehr braucht.

Manchmal denkt man einfach in die falsche Richtung und ist dann froh, dass es Leute wie dich gibt, die den Blick wieder richten.

Habe die ganze Zeit versucht das Panel dem SurfaceControl anzupassen, statt anders herum.

Vielen Dank.

SGT_BOB

Thema: Panel (Autosize) ändert seine Größe nicht
Am im Forum: GUI: Windows-Forms

Hallo Leute.

Hab ein Problem mit einem Panel (Autosize = true). Das Element auf dem Panel ist ein SurfaceControl(ähnlich wie PictureBox). Ändere ich die Größe des SurfaceControls zur Laufzeit auf einen kleineren Wert, bleibt die Größe des Panels gleich.

Beispiel:

Alte Größe:
SurfaceControl: 800x800
Panel: 800x800

Neue Größe:
SurfaceControl: 400x400
Panel: 800x800 (immer noch)

Ändere ich die Größe manuell im Quelltext mit

this.panelMap.Size = this.scMap.Size;

"verschwindet" mein SurfaceControl. 8o

Sollte sich "Autosize" nicht eigentlich darum kümmern und wieso ist bei manueller Anpassung mein SurfaceControl nicht mehr sichtbar???

Hier nochmal ein wenig Source: (die Größe von scMap wird über einen Dialog geändert)


NewMap nm = new NewMap(this);
nm.ShowDialog(this);
if(nm.DialogResult == DialogResult.OK)
{
	this.scMap.Refresh();
	Console.WriteLine("DialogResult: OK");
	this.panelMap.Size = this.scMap.Size; // manuelle Anpassung
	Console.WriteLine("scMap.Size: " + scMap.Size);
	Console.WriteLine("panelMap.Size: " + this.panelMap.Size);

	this.CreateMap(); // hier wird an den beiden Elementen nix mehr
                                          // geändert, außer ein panelMap.ResumeLayout();
}

Hoffe ich konnte es ein wenig verständlich erklären und dass ihr mir fleißig antwortet.

Mfg

SGT_BOB

Thema: Scrollbars mit SDL.SurfaceControl
Am im Forum: GUI: Windows-Forms

Hallo nochmal.

Ich habe jetzt (erstmal) eine (vorübergehende) Lösung.

Ich platziere mein SurfaceControl auf einem Panel, welches bei Änderung von SurfaceControl.Size dessen Größe annimmt. Dieses platziere ich auf einem weiteren Panel, welches "Autoscroll=true" eingestellt ist.
Hört sich ein wenig verschachtelt an, funktioniert aber.

Ich verstehe allerdings nicht warum das mit dem Autoscroll mit einem anderen Control (hier Panel) funzt und nicht direkt mit dem SurfaceControl, welches ja auch ein Control ist. ?(

Vielleicht hat dafür ja auch jemand eine Erklärung oder eine bessere Lösung als meine.

Ciao

SGT_BOB

Thema: Scrollbars mit SDL.SurfaceControl
Am im Forum: GUI: Windows-Forms

Hallo Leute.

Hab mal wieder ein Problem.

Und zwar habe ich ein SurfaceControl (SDL.Net) auf einem Panel abgelegt und würde gerne, wenn ich die SurfaceControl vergrößere, Scrollbalken angezeigt bekommen.

Die Eigenschaften des Panel:

AutoScroll: true
AutoScrollMinSize: 50,50
AutoSize: false
Dock: None


Die Eigenschaften des SurfaceControl:

Dock: None
SizeMode: AutoSize

Wenn ich jetzt während der Laufzeit ein Bild blitte welches größer ist als das SurfaceControl, wird dieses angepaßt und wird meistens größer als das Panel auf dem es sich befindet. Leider werden die Scrollbalken nicht angezeigt.

Hier mal etwas Code:


...
this.scMap.Size = new Size(800, 800);
			this.sfcMapArea = new SDL.Graphics.Surface(new Size(800, 800)); // SurfaceControl
			this.scMap.Refresh();
			this.sfcMapArea.Fill(Color.White);
			this.panelMap.AutoScroll = true; // darauf sitzt das SurfaceControl
			this.panelMap.ResumeLayout();
			this.ResumeLayout();
			
                                                // die richtigen Größen werden auch ausgegeben
			Console.WriteLine("scMap.Size: " + scMap.Size);
			Console.WriteLine("panelMap.Size: " + panelMap.Size);
...


Das selbe "Spiel" habe ich einmal auf eine PictureBox umgestellt und dort funktioniert es komischerweise. Wundert mich halt, da laut SdlDotNet-Dokumentation das SurfaceControl von PictureBox abgeleitet ist. Außerdem sollte es doch egal sein welches Element auf dem Panel liegt oder nicht?

Weiß nicht weiter... Habe bereits "gegoogelt" und auch hier im Forum alles ausprobiert, aber leider ohne Erfolg.

Mfg

SGT_BOB

Thema: Verständnis von Streams
Am im Forum: Netzwerktechnologien

Hallo.

Als Beispiel nehmen wir mal einen Mail-Server (POP-Server). Der hat einen bestimmten Befehlssatz, den man sich über einen Befehl auch immer ausgeben kann (ich glaube 'help' 8)).

Du kannst über einen TcpClient eine Verbindung mit dem Server herstellen und brauchst dann einen NetworkStream um Daten an den Server zu senden und einen Streamreader um Antworten bzw. Ausgaben vom Server entgegen zu nehmen. Einige Beispiele findest du hier im Forum bzw. schau doch mal bei Codeproject vorbei.

Ich hoffe ich habe dich richtig verstanden und konnte dir einen kleinen Denkanstoß geben.

Mfg

SGT_BOB

PS: Falls du nicht weiterkommen solltest, dann melde dich nochmal, ich schau dann mal ob ich was für dich finde. Hab damit auch schon ein wenig zu tun gehabt.

Thema: Streamreader --> Wann "leer"???
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo.

Wahrscheinlich geh ich dir schon auf die Nerven
, aber irgendwie ist das scheinbar nicht das was ich brauche.
Wenn ich es richtig verstanden habe gilt das nur für eine Antwort die sich über mehrere Zeilen erstreckt. Aber das wird bei mir doch über ein "stream.ReadLine()" gelöst. Das heißt er liest doch eh zeilenweise aus dem Stream, aber ich habe manchmal das Gefühl, der Stream ist scheinbar leer und das Programm bleibt dann an dieser Stelle hängen, bis der FTP-Server mir eine Timeout-Meldung gibt, dann steht im Stream ja wieder etwas drin und er liest innerhalb der Schleife weiter.

Nochmal ein wenig Code und die entsprechende Ausgabe:


private void GetResponse(StreamReader stream)
		{
			try
			{
				serverResponse = "";
				string temp = "";
				
				int count = 0;
				
				Console.WriteLine("+++ GetResponse(StreamReader stream) +++");
				do
				{
					Console.WriteLine("Durchlauf " + (count += 1));

//					if(temp = stream.ReadLine() + CRLF)
					Console.WriteLine(stream.Peek());
					temp = stream.ReadLine() + CRLF;
					Console.WriteLine("temp: " + temp + " --> temp.Length = " + temp.Length);
					if(temp.Length ≥ 3 || !temp.Equals(CRLF))
					{					
						serverResponse += temp;
						Console.WriteLine("IF");
					}
					else
					{
						temp = "";
						Console.WriteLine("ELSE");
						break;
					}

				}while(temp.Length ≥ 3 && temp.Length != 0);
					


			}
			catch(Exception ex)
			{
				Console.WriteLine(ex.ToString());
			}
			Console.WriteLine("GetResponse-ENDE");
		}

einen "LIST"-Befehl und einen "PWD"-Befehl ausgeführt bringt mir exakt folgende Console-Ausgabe:


ftp-> 150 Opening ASCII mode data connection for file list
+++ GetResponse(StreamReader stream) +++
Durchlauf 1
100
temp: drwxr-xr-x 4 ftp ftp 93 May 29 22:04 .
--> temp.Length = 58
IF
Durchlauf 2
100
temp: drwxr-xr-x 4 ftp ftp 93 May 29 22:04 ..
--> temp.Length = 59
IF
Durchlauf 3
45
temp: -rw-r--r-- 1 ftp ftp 156 Jan 1 15:21 Closed.htm
--> temp.Length = 67
IF
Durchlauf 4
45
temp: -rw-r--r-- 1 ftp ftp 136 Jan 1 15:21 Home.htm
--> temp.Length = 65
IF
Durchlauf 5
100
temp: drwxr-xr-x 2 ftp ftp 34 Jan 1 15:21 Images
--> temp.Length = 63
IF
Durchlauf 6
45
temp: -rw-r--r-- 1 ftp ftp 228 Jan 1 15:21 Navi.htm
--> temp.Length = 65
IF
Durchlauf 7
45
temp: -rw-r--r-- 1 ftp ftp 585 Jan 1 15:21 index.htm
--> temp.Length = 66
IF
Durchlauf 8
100
temp: drwxr-xr-x 2 ftp ftp 6 May 29 22:04 test
--> temp.Length = 61
IF
Durchlauf 9
-1
temp:
--> temp.Length = 2
ELSE
GetResponse-ENDE
drwxr-xr-x 4 ftp ftp 93 May 29 22:04 .
drwxr-xr-x 4 ftp ftp 93 May 29 22:04 ..
-rw-r--r-- 1 ftp ftp 156 Jan 1 15:21 Closed.htm
-rw-r--r-- 1 ftp ftp 136 Jan 1 15:21 Home.htm
drwxr-xr-x 2 ftp ftp 34 Jan 1 15:21 Images
-rw-r--r-- 1 ftp ftp 228 Jan 1 15:21 Navi.htm
-rw-r--r-- 1 ftp ftp 585 Jan 1 15:21 index.htm
drwxr-xr-x 2 ftp ftp 6 May 29 22:04 test

+++ GetCurrentDir() +++
+++ GetResponse(StreamReader stream) +++
Durchlauf 1
-1
temp: 226 Transfer complete
--> temp.Length = 23
IF
Durchlauf 2
-1
temp: 257 "/" is the current directory
--> temp.Length = 34
IF
Durchlauf 3
-1 <-- Hier bleibt er kurz hängen
temp: 421 Idle timeout (120 seconds): closing control connection
--> temp.Length = 60
IF
Durchlauf 4
-1
temp:
--> temp.Length = 2
ELSE
GetResponse-ENDE
226 Transfer complete
257 "/" is the current directory
421 Idle timeout (120 seconds): closing control connection



Ich hoffe du kannst jetzt eher in meine Problematik einsteigen. Mir fehlt einfach die Möglichkeit das Auslesen des Streams abzubrechen wenn ich es möchte, nämlich dann wenn ich meine Daten (Status) habe. Die habe ich aber schon bevor die letzte Meldung (421 Idle timeout (120 seconds): closing control connection) kommt. Diese erscheint meines Erachtens nach ja nur, weil der Server die Verbindung wegen fehlender Aktivität abbricht.

Hoffe du (oder irgendwer) kann mir da weiterhelfen.

Mfg

SGT_BOB

Thema: Streamreader --> Wann "leer"???
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo.

Nochmal danke für deine Hilfe. Leider steh ich noch immer auf dem Schlauch.

@herbivore:

Soweit das ich Dateien herunter- bzw. herauflade bin ich noch gar nicht. Momentan geht es mir nur darum wie ich die Antworten vom Server bekomme. Sende ich z.B. über das Programm einen "List"-Befehl sieht das ganze so aus und funktioniert einwandfrei.


+++ Connected = True +++
ftp-> 150 Opening ASCII mode data connection for file list

drwxr-xr-x 4 ftp ftp 93 May 29 22:04 .
drwxr-xr-x 4 ftp ftp 93 May 29 22:04 ..
-rw-r--r-- 1 ftp ftp 156 Jan 1 15:21 Closed.htm
-rw-r--r-- 1 ftp ftp 136 Jan 1 15:21 Home.htm
drwxr-xr-x 2 ftp ftp 34 Jan 1 15:21 Images
-rw-r--r-- 1 ftp ftp 228 Jan 1 15:21 Navi.htm
-rw-r--r-- 1 ftp ftp 585 Jan 1 15:21 index.htm
drwxr-xr-x 2 ftp ftp 6 May 29 22:04 test


Mein Problem scheint wirklich die "Antwortpause" vom Server zu sein, so wie es von dir bereits erwähnt wurde.

Leider gab mir das RFC auch nicht die Auskünfte die ich brauche. Ist vielleicht auch eher serverabhängig.

Wäre echt super wenn mir jemand einen Denkanstoß geben könnte, da ich nicht das nächste Projekt wegen solche eines "kleinen" Problems ins Nirvana schicken möchte.

Mfg

SGT_BOB


PS:

Könnte es vielleicht über eine Art "Timeout-Kontrolle" gelöst werden??? Ich bekomme nämlich manchmal auch soetwas hier und dann springt er doch aus der Schleife raus.


226 Transfer complete
257 "/" is the current directory
421 Idle timeout (120 seconds): closing control connection

Thema: Streamreader --> Wann "leer"???
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo.

Erstmal danke.

Also meinst du über ein Byte-Array sollte es hier besser funktionieren.
Aber woher weiß ich denn vorher wieviele Bytes da kommen sollen, oder bestimme ich das selbst? Wie gesagt es handelt sich um einen FTP-Client und der soll auf "allen" Servern funktionieren.

Hab da echt ein Verständnisproblem. X(

Mfg

SGT_BOB

Thema: Streamreader --> Wann "leer"???
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo Leute.

Schreibe gerade ein Programm mit Serverzugriff (FTP-Client). Vieles funktioniert auch reibungslos, allerdings hänge ich schon länger an folgendem Problem.

Ich möchte die Antworten vom Server in einem string speichern, den ich später für die Statusausgabe für meine WinForm bzw. zur weiteren Verarbeitung brauche.

Das Problem fängt aber an sobald der Server mehrere aufeinander folgende Antworten sendet.


private void GetResponse(StreamReader stream)
		{
			try
			{
				serverResponse = "";
				string temp = "";
				
				int count = 0;
				Console.WriteLine("+++ GetResponse(StreamReader stream) +++");
				do
				{
					Console.WriteLine("Durchlauf " + (count += 1));

					temp = stream.ReadLine() + CRLF;
					Console.WriteLine("temp: " + temp + " --> temp.Length = " + temp.Length);
					
						serverResponse += temp;


				}while(temp.Length ≥ 3 && temp.Length != 0);
				

			}
			catch(Exception ex)
			{
				Console.WriteLine(ex.ToString());
			}
			Console.WriteLine("GetResponse-ENDE");
		}

Manchmal funktioniert es, manchmal nicht. Irgendwie hab ich das Gefühl das hier beim 3. Durchlauf erfolglos versucht wird der Stream einzulesen. Das kommt dabei raus.


+++ GetResponse(StreamReader stream) +++
Durchlauf 1
temp: 226 Transfer complete
--> temp.Length = 23
Durchlauf 2
temp: 250 CWD command successful
--> temp.Length = 28
Durchlauf 3


Wie kann ich überprüfen ob der Stream "leer" ist??? Steh irgendwie auf dem Schlauch...

Danke schonmal.

Mfg SGT_BOB

Thema: Howto: SDL Fenster in WinForm
Am im Forum: .NET-Komponenten und C#-Snippets

Hi.

Vielleicht ein wenig spät, aber das sollte eine einfachere Lösung sein:

SDL SurfaceControl

CU

SGT_BOB

Thema: Kleines 2D-Aufbauspiel in C# (Siedler-ähnlich)
Am im Forum: Projekte

Hallo allerseits.

Erst mal Gratulation. Sieht schon ganz gut aus.

Hab mal ein bissel rumgespielt und hab folgendes erreicht:


Informationen über das Aufrufen von JIT-Debuggen
finden Sie am Ende dieser Meldung, anstatt in diesem Dialogfeld.

************** Ausnametext **************
System.IndexOutOfRangeException: Der Index war außerhalb des Arraybereichs.
   at nsConquerorPlay.play.Wappenanzeige_aktualisieren(Int32 index_typ_ob_linksklick_oder_moveover) in c:\data\c#\conqueror\play.cs:line 7911
   at nsConquerorPlay.play.MouseMoveForm(Object sender, MouseEventArgs e) in c:\data\c#\conqueror\play.cs:line 7775
   at System.Windows.Forms.Control.OnMouseMove(MouseEventArgs e)
   at System.Windows.Forms.Control.WmMouseMove(Message& m)
   at System.Windows.Forms.Control.WndProc(Message& m)
   at System.Windows.Forms.ScrollableControl.WndProc(Message& m)
   at System.Windows.Forms.ContainerControl.WndProc(Message& m)
   at System.Windows.Forms.Form.WndProc(Message& m)
   at System.Windows.Forms.ControlNativeWindow.OnMessage(Message& m)
   at System.Windows.Forms.ControlNativeWindow.WndProc(Message& m)
   at System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)


************** Geladene Assemblys **************
mscorlib
    Assembly-Version: 1.0.5000.0
    Win32-Version: 1.1.4322.2032
    CodeBase: file:///c:/windows/microsoft.net/framework/v1.1.4322/mscorlib.dll
----------------------------------------
mscorlib.resources
    Assembly-Version: 1.0.5000.0
    Win32-Version: 1.1.4322.573
    CodeBase: file:///c:/windows/assembly/gac/mscorlib.resources/1.0.5000.0_de_b77a5c561934e089/mscorlib.resources.dll
----------------------------------------
dsc_Conqeror
    Assembly-Version: 1.0.2200.37737
    Win32-Version: 1.0.2200.37737
    CodeBase: file:///C:/DOKUME~1/olli/LOKALE~1/Temp/Rar$EX04.407/Conqueror_beta_v1-2/bin/Debug/dsc_Conqeror.exe
----------------------------------------
System.Windows.Forms
    Assembly-Version: 1.0.5000.0
    Win32-Version: 1.1.4322.2032
    CodeBase: file:///c:/windows/assembly/gac/system.windows.forms/1.0.5000.0__b77a5c561934e089/system.windows.forms.dll
----------------------------------------
System
    Assembly-Version: 1.0.5000.0
    Win32-Version: 1.1.4322.2032
    CodeBase: file:///c:/windows/assembly/gac/system/1.0.5000.0__b77a5c561934e089/system.dll
----------------------------------------
System.Drawing
    Assembly-Version: 1.0.5000.0
    Win32-Version: 1.1.4322.2032
    CodeBase: file:///c:/windows/assembly/gac/system.drawing/1.0.5000.0__b03f5f7f11d50a3a/system.drawing.dll
----------------------------------------
System.Xml
    Assembly-Version: 1.0.5000.0
    Win32-Version: 1.1.4322.2032
    CodeBase: file:///c:/windows/assembly/gac/system.xml/1.0.5000.0__b77a5c561934e089/system.xml.dll
----------------------------------------
System.Windows.Forms.resources
    Assembly-Version: 1.0.5000.0
    Win32-Version: 1.1.4322.573
    CodeBase: file:///c:/windows/assembly/gac/system.windows.forms.resources/1.0.5000.0_de_b77a5c561934e089/system.windows.forms.resources.dll
----------------------------------------

************** JIT-Debuggen **************
Um das JIT-Debuggen (Just-In-Time) zu aktivieren, muss in der
Konfigurationsdatei der Anwendung oder des Computers
(machine.config) der jitDebugging-Wert im Abschnitt system.windows.forms festgelegt werden.
Die Anwendung muss mit aktiviertem Debuggen kompiliert werden.

Zum Beispiel:

<configuration>
    <system.windows.forms jitDebugging="true" />
</configuration>

Wenn das JIT-Debuggen aktiviert ist, werden alle nicht behandelten
Ausnahmen an den JIT-Debugger gesendet, der auf dem
Computer registriert ist, und nicht von diesem Dialogfeld behandelt.

Ich glaube es ist passiert als ich bei gedrückter linker Maustaste über den Screen
gezogen hab.

Vielleicht hilft dir das a bei der Fehlersuche. Ansonsten gute Arbeit, weiter so.


Mfg SGT_BOB

Thema: Installationsprobleme mit VS 2005 Beta 2
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hi herbivore.

Ich hab dann eben mal letzteres "vorgezogen". Schien alles nix mehr zu bringen.
Aber ich werde mir vor der nächsten Installation ein Image erstellen.

Fehler sind da gemacht zu werden und daraus zu lernen. 8)

Mfg SGT_BOB

Thema: Installationsprobleme mit VS 2005 Beta 2
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo Leute.

Leider läßt sich die Installation auf einmal nicht mehr vollständig beenden.
Hab am Freitag noch komplett alles installiert. Funktionierte auch soweit, leider war, anders als MS behauptet, keine Doku mit dabei. Deshalb versuchte ich diese separat nachzuinstallieren. Habe damit auch die Installation "zerschossen".

Nachdem ich alles runtergeschmissen hatte, sogar mit RegEdit unnötige Registry-Einträge gelöscht hatte, versuchte ich eine Neuinstallation. Im Setup von VS 2005 Beta 2 kann ich noch alles auswählen, einstellen und starten. Aber sobald vom Setup versucht wird das .Net Framework zu installieren, schmiert die Installation ab und bietet mir an, den Fehlerbericht an MS zu senden.

Hat da schon irgendjemand ähnliche Erfahrungen gemacht.

Die Voraussetzungen für die Installation sollten erfüllt sein (IIS, usw...). Ich hab sogar schon das Tool von MS zur "sauberen" Deinstallation solcher Beta-Versionen (vs_uninst_betas.exe) drüberlaufen lassen, bekam allerdings keine Programme zur Deinstallation angezeigt.

Weiß echt nicht weiter. Plz help

Mfg SGT_BOB

Thema: Netzwerkproblem: W2K und zwei NW-Karten
Am im Forum: Smalltalk

Hey... danke hat funktioniert.

Allerdings erst nachdem ich an der Firewall "rumgespielt" hab. Denn eigentlich hätte der Pingbefehl so funktionieren müssen, auch wenn sich die beiden Rechner nicht im selben Netzwerk befinden.

Wie gesagt, war wohl die Firewall schuld, bzw. ich der Sie falsch konfiguriert hat.

Vielen, vielen Dank noch norma_timo.


Mfg SGT_BOB

Thema: Netzwerkproblem: W2K und zwei NW-Karten
Am im Forum: Smalltalk

Hallo norman_timo.

Danke für die Antwort. Werde es gleich mal probieren.

Mfg SGT_BOB

Thema: Netzwerkproblem: W2K und zwei NW-Karten
Am im Forum: Smalltalk

Hallo Leute.

Ich war mir nicht so richtig sicher, wo ich diesen Beitrag posten soll. Hoffe das ich hier richtig bin.

Ich habe folgende Situation:

In meinem Netzwerk befindet sich ein Router (T-Sinus 154 DSL). Dieser hat die IP 192.168.0.100 . DHCP ist deaktiviert.

Der erste Rechner, und gleichzeitig auch der Server, ist mit Windows 2000 Pro ausgestattet. Er hat die IP 192.168.0.1 . Außerdem ist noch eine Netzwerk-Karte eingebaut. Dieser hab ich die IP 192.168.0.2, Standard-Gateway: 192.168.0.1, DNS 192.168.0.1 (Jana-Server läuft als DNS und Proxy) gegeben.

Der zweite Rechner läuft unter XP und ist direkt über ein Crossover-Kabel mit dem 2000er verbunden. Der XP-Rechner hat die IP 192.168.0.5, Standard-Gateway und DNS-Server jeweils 192.168.0.2.

OK. Jetzt nach diesem Zahlengewühl mein Problem.
Ich bekomme leider keine Verbindung von einem zum anderen Rechner (kein Ping).
Beide Rechner befinden sich in der selben Arbeitsgruppe.

Ich weiß irgendwie nicht mehr weiter. Zuerst sollten mal die zwei Rechner kommunizieren können. Dann möchte ich gerne mit dem XP-Rechner über den anderen Online gehen können. Ich würde es gerne vermeiden ICS zu verwenden, da es meistens nur Probleme verursacht und meine Konfiguration durcheinander schmeißt.

Hoffe das hier ein paar Leute mehr Plan von Netzwerken haben als ich und mein Problem verständlich geschildert ist. (soweit es geht )

Danke schonmal für eure Hilfe.

Mfg SGT_BOB

PS: Hier mal ein Bild zum besseren Verständnis. (wehe einer lacht )

Thema: Werbebanner erstellen
Am im Forum: Grafik und Sound

Hallo MisterXY.

Ich denke mal, daß dir wohl keiner eine "kurze" Anleitung zum Erstellen von Werbebannern (mit oder ohne Flash) geben kann. Wenn das so einfach wäre, wären wohl sämtliche Grafiker und Mediengestalter arbeitslos.

Natürlich gibt es diverse Tools/Programme mit denen man schnell und ohne viel Aufwand, mit Flash ein Banner erstellen kann, aber das Ergebnis wirkt dann häufig sehr unprofessionell.

Falls du deine Frage etwas konkretisieren könntest, würde man dir vielleicht weiterhelfen können.

Mfg SGT_BOB

PS: Die "Centron-Werbung" ist ein einfaches GIF.

Thema: dll verwenden
Am im Forum: Rund um die Programmierung

Das ist eine sehr allgemeine Frage.

Grundsätzlich kannst du .Net Dll's und COM-Komponenten verwenden indem du bei Visual Studio folgendes machst:
Projektmappenexplorer-> Referenzen (rechte Maustaste) -> Referenz hinzufügen...

Dort wählst du dann die entsprechende(n) Datei(en) aus.

Ansonsten kann ich dir nur die Forumsuche empfehlen.

Such nach "Dll einbinden" oder so. Das Thema wurde schon oft erklärt.

Falls immer noch was unklar ist, frag nach.

Mfg SGT_BOB

Thema: .NET Compact Framework wie benutzen?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo ganry.

Bist du dir sicher das es sich um Windows 2003 handelt. Für ein Smartphone??? 8o
Ich glaube eher das du dich evtl. verguckt hast. War es vielleicht WindowsCE (4 oder 5 oder ? )

Ich bin mir nicht sicher, aber ich glaube nicht das es Win2003 für Smartphones oder PocketPCs gibt.

Zu deinem Problem:

Bei VS2003 musst du ein neues Projekt erstellen (SmartDeviceAnwendung).

Zitat
muss ich bei dem assistenten windows ce oder pocket pc auswählen?

Also zunächst sollte das egal sein, da dein Programm auf .Net CF Ebene läuft. Da spielt das Betreibssystem keine (kaum eine) Rolle. Der Assistent bietet dir nur die Möglichkeit einen Emulator auszuwählen. Auf ihm wird deine Anwendung ausgeführt (zum Testen) als wenn es sich um ein richtigen PocketPC handelt.
Ich würde dir trotzdem empfehlen WindowsCE zu nehmen. Du kannst es aber später auch noch umstellen.

Mfg SGT_BOB

PS:
Zitat
jetzt möchte ich gerne mal eine anwendung dafür schreiben doch ich habe keine ahnung wie das funktioniert.

Das hört sich für mich so an, als ob du noch nie programmiert hast ?!?

Thema: Wie kann man den Laufwerksnamen erkennen?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo homer Jay.

Falls du dich mit dem Beispiel für WMI auseinandergesetzt hast, dann wirst du evtl. auch die passende Lösung für dein Problem finden. Schau dich mal auf den MSDN Seiten bei WMI um.

z.B. hier:

Win32_USBControllerClass

oder hier:

Win32USBHub

Die Suche dort kann etwas dauern, aber ich bin bis jetzt fast immer fündig geworden.

Hoffe dir geholfen zu haben.


Mfg SGT_BOB

Thema: Wie kann man den Laufwerksnamen erkennen?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Du wirst schon die entsprechende DLL referenzieren müssen.

Visual Studio --> Projektmappen-Explorer (Rechtsklick auf Referenzen) --> Referenz Hinzufügen --> System.Management suchen --> auswählen...

---> freuen

Jetzt sollte es funtzen...

Mfg SGT_BOB

Thema: Prozessor Zeit konvertieren
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo rockthecity.

Es kommt darauf an was du vorhast.

Willst du die Zeit nur ausgeben, dann könntest du den Wert in einen String umwandeln und splitten.

Andernfalls wirst du wohl auf die Lösung von jemand anderen warten müssen. Ich hab nämlich keine.

Mfg SGT_BOB

Thema: Internet einbinden
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ich hab mal einen Beispiel-Code aus der SDK-Doku kopiert. Das sollte schon ein Grundstein sein, für das was du suchst. (Vorausgesetzt ich hab's richtig verstanden 8) )

 
using System;
using System.IO;
using System.Net;
using System.Text;


class HttpWebRequest_Connection
{
  static void Main()
  {    
    try  
    {

      // Create a new HttpWebRequest object.Make sure that 
      // a default proxy is set if you are behind a fure wall.
      HttpWebRequest myHttpWebRequest1 =
        (HttpWebRequest)WebRequest.Create("http://www.contoso.com");
     
      myHttpWebRequest1.KeepAlive=false;
      // Assign the response object of HttpWebRequest to a HttpWebResponse variable.
      HttpWebResponse myHttpWebResponse1 = 
        (HttpWebResponse)myHttpWebRequest1.GetResponse();

      Console.WriteLine("\nThe HTTP request Headers for the first request are: \n{0}",myHttpWebRequest1.Headers);
      Console.WriteLine("Press Enter Key to Continue..........");
      Console.Read();

      Stream streamResponse=myHttpWebResponse1.GetResponseStream();
      StreamReader streamRead = new StreamReader( streamResponse );
      Char[] readBuff = new Char[256];
      int count = streamRead.Read( readBuff, 0, 256 );
      Console.WriteLine("The contents of the Html page are.......\n");  
      while (count > 0) 
      {
        String outputData = new String(readBuff, 0, count);
        Console.Write(outputData);
        count = streamRead.Read(readBuff, 0, 256);
      }
      Console.WriteLine();
      // Close the Stream object.
      streamResponse.Close();
      streamRead.Close();
      // Release the resources held by response object.
      myHttpWebResponse1.Close();
      // Create a new HttpWebRequest object for the specified Uri.
      HttpWebRequest myHttpWebRequest2 = 
        (HttpWebRequest)WebRequest.Create("http://www.contoso.com");
      myHttpWebRequest2.Connection="Close";
      // Assign the response object of 'HttpWebRequest' to a 'HttpWebResponse' variable.
      HttpWebResponse myHttpWebResponse2 = 
        (HttpWebResponse)myHttpWebRequest2.GetResponse();
      // Release the resources held by response object.
      myHttpWebResponse2.Close();
      Console.WriteLine("\nThe Http RequestHeaders are \n{0}",myHttpWebRequest2.Headers);
      Console.WriteLine("\nPress 'Enter' Key to Continue.........");
      Console.Read();      
    }
    catch(ArgumentException e)
    {
      Console.WriteLine("\nThe second HttpWebRequest object has raised an Argument Exception as 'Connection' Property is set to 'Close'");
      Console.WriteLine("\n{0}",e.Message);
    }
    catch(WebException e)
    {
      Console.WriteLine("WebException raised!");
      Console.WriteLine("\n{0}",e.Message);
      Console.WriteLine("\n{0}",e.Status);
    } 
    catch(Exception e)
    {
      Console.WriteLine("Exception raised!");
      Console.WriteLine("Source :{0} " , e.Source);
      Console.WriteLine("Message :{0} " , e.Message);
    }
  }
}


Mfg SGT_BOB

Thema: Internet einbinden
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo cuco.

Erst mal kann man (fast) alles mit C# machen.

Zu deiner Frage bezüglich Links aufrufen etc. wäre eine Angabe der Framework Version ganz hilfreich, da es beim .Net Framework 2.0 einige Neuerungen und Verbesserungen gibt.

Solltest du mit der 1.1er Version arbeiten, dann schau mal in der SDK-Doku nach HttpWebRequest und HttpWebResponse. Es ist schwierig zu sagen wonach du suchen sollst, wenn du nicht genau beschreibst wast du vorhast.

Für mich hört es sich erstmal danach an als ob du z.B. eine Webseite aufrufen und deren Quellcode nach bestimmten Begriffen bzw. Texten parsen möchtest.

Zu deinem letztem Punkt: Natürlich wird hier auch "Härtefällen" geholfen, jeder von uns ist oder war ein solcher "Härtefall".

Mfg SGT_BOB

Thema: Wie kann man den Laufwerksnamen erkennen?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo homer jay.

Über WMI geht das und vieles mehr ziemlich simpel. Ist ähnlich wie SQL-Abfragen.

Hier mal ein Beispiel:

 
using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Windows.Forms;
using System.Data;
using System.Management;
using System.Globalization;

namespace LogicalDiskInfo
{
	/// <summary>
	/// Summary description for LogicalDisk.
	/// </summary>
	public class LogicalDisk
	{
		private string _Name;
		private bool _VolumeDirty;

		public LogicalDisk()
		{
			GetLogicalDiskInfo();
		}

		private void GetLogicalDiskInfo()
		{
			try
			{	
				ManagementObjectSearcher query;						// Abfrage
				ManagementObjectCollection queryCollection;			// Sammlung von Objekten
				System.Management.ObjectQuery oq;					// Objekt-Abfrage
				string MachineName = "localhost";				// default = localhost
				ConnectionOptions co = new ConnectionOptions();		// Wichtig für Remote-System
				System.Management.ManagementScope ms;				// "Fokus" auf das System
				// (Woher sollen die Infos kommen)

			
				ms = new System.Management.ManagementScope("\\\\" + MachineName + "\\root\\cimv2", co);
				oq = new System.Management.ObjectQuery("SELECT * FROM Win32_LogicalDisk WHERE Caption = 'C:'"); 
				query = new ManagementObjectSearcher(ms,oq);
				queryCollection = query.Get();

				#region Durchlaufabfrage der Volume-Daten
				foreach(ManagementObject mo in queryCollection)
				{
					_Name = mo["Name"] == null ? "" : mo["Name"].ToString();
				}
				#endregion

				ManagementObject[] mobj = new ManagementObject[queryCollection.Count];
				queryCollection.CopyTo(mobj,0);
				foreach(ManagementObject mo in mobj)
					Console.WriteLine(mo.GetText(TextFormat.Mof));

				LogicalDiskInfoConsoleOutput();
			}
			catch(Exception e)
			{
				Console.WriteLine("ERROR-->LogicalDisk\n\n" + e.ToString());
			}	
		}

		private void LogicalDiskInfoConsoleOutput()
		{
			Console.WriteLine("VolumeDirty: " + _VolumeDirty);
		}
	}
}

Hier ist nur gegeben wie du WMI anwendest. Genaueres erfährst du über MSDN

Dort stehen die benötigten Fakten. Falls etwas unklar ist, meld dich.

Mfg SGT_BOB