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 Jack_AI
Thema: [erledigt] StreamReader verschluckt erstes Zeichen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Haha, nein, nein. Ich such' schon, ich such' schon. Wenn ich das Problem gelöst habe, poste ich hier noch mal meine Lösung, für die nächste Generation an Anfängern. Danke nochmals,

Jack

Thema: [erledigt] StreamReader verschluckt erstes Zeichen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Autsch, das war mal wieder peinlich. Jetzt hat herbivore wieder für mich Suchmaschine spielen müssen. Sorry dafür. Leider weiß ich nicht, wie ich an dieses übersprungene Zeichen kommen kann.

Domo arigato,
Jack

Thema: [erledigt] StreamReader verschluckt erstes Zeichen
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo.

Ich möchte eine .xml-Datei per StreamReader auslesen. Ursprünglich wollte ich das per XmlReader machen, habe aber einen ominösen Fehler dazu bekommen und wollte es dann auf die "schmutzige" Art machen. Das funktioniert soweit auch ganz gut. Nur wenn ich die Zeilen per ReadLine() ausgeben möchte, fehlt das erste Zeichen jeder Zeile.

Hier der Code (haha):


      // Erster Durchlauf
      while (Reader.Read() != -1)
      {
        string AktuelleZeile = Reader.ReadLine();
        MessageBox.Show(AktuelleZeile);
      }

Weiter unten setze ich die Stream per "Reader.BaseStream.Position = 0" wieder auf den Anfang zurück und lese den Stream noch einmal mit einer zweiten Schleife aus. (Ich erwähne das nur der Vollständigkeit halber, weil ich mir nicht erklären kann, wie das durch eine so einfache Code-Stelle passieren kann)

Kann mir jemand sagen, warum das erste Zeichen verloren geht? Wenn die Zeile mit zwei Leerzeichen anfängt, gehen beide verloren.

Jack

edit: Ach ja! Was ich vergessen habe zu erwähnen: Das erste Zeichen ist der Start einem XML-Element, also immer eine offene eckige Klammer ("<") oder eben ein Leerzeichen.

Thema: Packet Sniffer zeigt meine DB-Anfragen an
Am im Forum: Datentechnologien

Zitat
Original von FZelle
Ja, und dieses Thema haben wir in diesem Forum schon bis zum erbrechen behandelt.

Deshalb hat ist das auch schon bis in die FAQ vorgedrungen :
[FAQ] DB-Passwort/Connection-String sicher speichern

Ich bin zuvor schon einmal auf die Links gestoßen, habe sie aber damals nicht in Zusammenhang mit MSIL-Reengineering gebracht. Auf die FAQ hättest Du auch netter hinweisen können.

Jack

Thema: Packet Sniffer zeigt meine DB-Anfragen an
Am im Forum: Datentechnologien

Ich muss die Problematik leider noch einmal hervorkramen. Erst einmal noch eine seit Langem ausstehende Antwort:

Zitat
Original von cemizm
Wie wäre es mit einem Webservice? Ich würde die ganzen Abfragen etc.. erst garnicht in die GUI reinpacken sondern im Webservice implementieren. So könnte man auch weiterhin die mächtigen werkzeuge wie DataSet etc.. nutzen.

Hallo cemizm,
Danke für den Tipp. Leider ist liegt die von dir vorgeschlagene Lösung weit über meinen Programmierfertigkeiten. Mir wäre eine "anfängergerechte" Lösung vorerst lieber.

Und noch einmal zum Hauptthema:
Angenommen ich habe eine Datei mit hartgecodeten Verbindungsdaten, um auf einen Server zugreifen zu können. Muss ich dann befürchten, dass diese Daten aus dem MSIL-Code herausgelesen werden können? Ich habe selber noch nie eine Datei auf diese Art "re-engineert", aber angeblich soll das ja ziemlich einfach sein... wenn man weiß, wie es geht.

Jack

Thema: Der nutzloseste Datentyp
Am im Forum: Smalltalk

Was ich nie verstanden habe - Achtung, jetzt kommt's:
LPCWSTR = Long Pointer to Const Wide String. Gehörend zur Familie der Long Pointer.

Keine Ahnung, wofür man das braucht.
Ich kann mir aber vorstellen, dass in modernen Zeiten solch ein Datentyp kaum noch Bedeutung hat.

Thema: Der nutzloseste Datentyp
Am im Forum: Smalltalk

Point kann man doch ganz einfach durch zwei Ints (x, y) ersetzen. Ist doch praktischer (wenn auch nicht so "kompakt"...).

Jack

Thema: Der nutzloseste Datentyp
Am im Forum: Smalltalk

Ich bin für Point. Wobei ich nicht ausschließen möchte, dass C++ da noch einiges auf Lager hat.

Jack

Thema: 10,9,8,7,6,5,4,3,2,1 Finger-Coder
Am im Forum: Smalltalk

Zitat
Original von el Diablo
Zitat
Original von aime2code
Denn ich schaff mit meinem locker 300 Anschläge/Sekunde.
8o Was willst du denn? 300 Anschläge in der Sekunde ist doch schon mal garnicht schlecht...

Edit: Bei mir ist es ähnlich wie bei Golo.

Wow. Ich schaffe nicht mal 300 Anschläge/Sekunde wenn ich mit der Faust ganz schnell auf der Tastatur rumhaue. Ich benutze ein Vier-Finger-System, eine Weiterentwicklung des Zwei-Finger-Systems (tm).

Thema: So eine schöne Seite...;) / Misslungene Webauftritte
Am im Forum: Smalltalk

[EDIT=herbivore]Threads zusammengefügt[/EDIT]

Zitat
Original von talla
Viel lustiger find ich das animierte "Maskottchen" für Olympia 2012 in London, bzw. das Präsentationsvideo dazu, Link. Das ist nämlich ernst gemeint, und das obwohl es spätestens ab 1.44 für epileptische Anfälle sorgt. Nachdem bei Vorführungen dann wirklich mehr als 20 Leute so nen Anfall hatten wurde die animierte Variante des Logos auch schnell verbannt, und nun gibts ne Online Petition für ein neues Logo Das nenn ich dann britischen Humor

Der Link geht nicht mehr...

Thema: Bei neuem Fenster Ereignis auslösen
Am im Forum: GUI: Windows-Forms

Zitat
Original von barzelona
Ja, geht:


                   WqlEventQuery query = new WqlEventQuery("__InstanceCreationEvent", new TimeSpan(0, 0, 1),
                "TargetInstance isa \"Win32_Process\"");
            ManagementEventWatcher watcher = new ManagementEventWatcher();
            watcher.Query = query;
            watcher.Options.Timeout = new TimeSpan(0, 0, 30); //läuft dann 30sek
            ManagementBaseObject e = watcher.WaitForNextEvent();
            Console.WriteLine("Prozess wurde gestartet: " + 
            ((ManagementBaseObject)e["TargetInstance"])["Name"].ToString());

Ich habe das mal so 1 zu 1 übernommen, nachdem ich mit dem Code zugegebenermaßen nicht viel anfangen kann und habe die letzte Zeile auf MessageBox abgeändert. Das Ganze läuft in einem neuen Thread per


ThreadZwei = new Thread(new ThreadStart(WatchWindows));

Allerdings passiert gar nichts. Ich zweifel nicht daran, dass der Code funktioniert. Das Problem ist wohl eher meine Unkenntnis. Sehe ich das richtig, dass die Zeile


Console.WriteLine("Prozess wurde gestartet: " + 
            ((ManagementBaseObject)e["TargetInstance"])["Name"].ToString());
automatisch ausgelöst wird, sobald ein neuer Prozess dazu kommt?

Danke,
Jack

PS: Ich habe mich jetzt mal grob in Threads eingearbeitet. Wenn jemand zufällig eine Lösung parat hat, wie ich einen zweiten Thread zusammen mit dem GUI-Thread beenden kann, wäre ich dankbar. Aber das ist nur sekundär.

Thema: Nerviger Alarm gesucht :D
Am im Forum: Grafik und Sound

Ich bin zwar nicht knub, aber schau mal hier: Kostenlose und frei-verwendbare "Sounds"?

Thema: Bei neuem Fenster Ereignis auslösen
Am im Forum: GUI: Windows-Forms

Oh cool, mein Programm friert ein...
Ob das etwas damit zu tun hat? Das heißt, ich müsste das in einen Extra-Thread einfügen. Habe ich bisher noch nie gemacht. Werde ich wohl tun müssen.

Danke für deine Antwort, barzelona. Alternativ hätte ich eine Funktion zum Anzeigen der Namen aller offenen Fenster (zur Überprüfung auf neue Fenstern) missbraucht. (Substantivierung rulez)

Geht das auch? Dann brauch ich mich nicht in Threads einzuarbeiten...

Thema: Bei neuem Fenster Ereignis auslösen
Am im Forum: GUI: Windows-Forms

Hallo liebe Community.

Ich bringe es gleich auf den Punkt: Ist es möglich das Erzeugen eines neuen, anwendungsfremden Fensters als Ereignis abzufangen? Oder um es noch mal einfacher auszudrücken: User öffnet beliebiges Programm foobar, Programm reagiert -> "Foobar wurde geöffnet"

Grüße,
Jack

PS: Ich habe schon nach dem Problem gesucht, aber keine Lösung gefunden. Ich hoffe also weder, dass das Problem trivial einfach noch unlösbar ist.

Thema: Bah! Programmieren...
Am im Forum: Smalltalk

Hallo herbivore,

Zitat
Original von herbivore
Was das Lernen von Programmiersprachen angeht ist es ganz einfach: Du kannst nicht erwarten, dass du eine gute Einführung kostenlos bekommst. Erwarte nicht, dass ein Tutorial ein Buch ersetzen kann und erwarte keine kostenlosen Bücher im im Netz, sondern kauf dir ein Buch. Dann hört auch der Frust auf. Dass es gerade für C# das Galileo <openbook>: Visual C# 2005 von Andreas Kühnel kostenlos im Netz gibt, ist ein Glücksfall, den man nicht auf andere Sprachen übertragen kann.

Du hast damit den Nagel auf den Kopf getroffen! Mir ist erst durch deinen Beitrag bewusst geworden, wie verwöhnt ich doch durch dieses Openbook bin. Man sollte viel öfters solche hervorragenden Werke zu anderen Themenbereichen oder Programmiersprachen kostenlos zur Verfügung stellen. Wie man durch soetwas die Popularität eines sonst kaum beachteten Themas steigern könnte... Ein Openbook zu WPF... *träum* Das wünsche ich mir von Microsoft. Und die sollen sich nicht wundern, warum WPF so unbekannt ist. Das wäre ein Anfang.

Thema: Bah! Programmieren...
Am im Forum: Smalltalk

C++ ist unnötig kompliziert und veraltet... und scheinbar ist kein C++-Programmierer dazu fähig/bereit, ein vernünftiges Tutorial ins Netz zu stellen

C# ist - so habe ich heute mitbekommen - leicht zu decompilen (zumindest ohne teure Verschlüsselungssoftware), langsamer als C++ und alle 3D-Grafik-Systeme haben gravierende Nachteile

PHP ist langsam und serverabhängig... und eine Skriptsprache

WPF aufgrund mangelnder Hilfe im Internet schwer bis kaum selbstständig erlernbar und zwei Jahre alte Bücher über WPF sind inzwischen schon veraltet

Ich bin frustriert. C# ist so schön, einfach, verständlich... aber eben nicht perfekt. Und andere Programmiersprachen sind dafür in den Bereichen, in denen C# hervorragt, mit großen Nachteilen behaftet. Irgendwie erfüllt keine Programmiersprache meine Ansprüche. Es ist zum Mäuse melken. Regt euch Programmieren nicht auch manchmal auf? Oder lernt ihr einfach die Sprache, die ihr für die Arbeit braucht und dann hat sich das gegessen?

Thema: Zukunft von WPF?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich habe zu dem Thema was auf Josh Smiths Blog gefunden (Josh Smith arbeitet nach eigener Aussage seit 1 1/2 Jahren an WPF). Dort versucht er die Frage zu beantworten, warum WPF bisher noch keinen großen Erfolg erzielen konnte und spekuliert über die Zukunft von WPF:

Josh Smiths Blog-Beitrag

Thema: Zukunft von WPF?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

WPF ist ja noch nicht vollständig ausgereift. Momentan fehlt es noch an ausgereiften Entwicklungsumgebungen, und ich bin guter Hoffnung, dass Microsoft für das ClearType-Problem eine Lösung findet.

Thema: Zukunft von WPF?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Sorry, wenn das jetzt bisschen vom Thema abweicht. Aber ich vermute, warum die Diskussion hier kurzeitig ziemlich aggressiv geworden ist, ist dass sowohl WinForm-Programmierer als auch WPF-Programmierer eventuell, um es mal übertrieben zu sagen, ihre Existenz gefährdet sehen.

Möglicherweise könnte WinForms und WPF doch parallel existieren. Die Nachteile von WPF gegenüber WinForms scheinen mir die Voraussetzung einer DirectX9-GraKa, die entsprechenden sonstigen Hardware-Voraussetzungen und der Umstellungsaufwand zu sein. Aber ich sehe keinen Grund, warum beides nicht eine Zeit lang gleichzeitig existieren könnte. Zumindest bis DirectX9 auf allen Rechnern Standard ist, was sich aber gerade im geschäftlichen Bereich schwer vorstellbar ist.

edit: Halt. Ich ziehe den letzten Satz zurück, nachdem mir gerade eingefallen ist, dass DirectX9 doch schon einige Jahre alt ist. Hab' da was verwechselt.

Thema: Zukunft von WPF?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Zitat
Original von LonelyPixel
Ich vermisse noch ein paar gute Tutorials, die einem WPF nahebringen. Hab aber noch nicht sehr gut gesucht. Bislang hab ich eine 4-teilige MSDN-Webcast-Reihe von Dirk Primbs gefunden, der das mit Folien und recht holprigen Demos live zeigt. Die Videos sind aber alt und berücksichtigen Orcas noch nicht. Was ich bei einem kurzen Test mit Orcas beta 1 und 2 gesehen hab, hat mich noch nicht überzeugt. Aber ich habe bereits ein Software-Projekt dafür vorgesehen, WPF-Erfahrungen zu sammeln.

Stimmt, Tutorials gibt es wirklich kaum welche. Bisher habe ich selbst nach längerem Suchen keine umfangreicheren Tutorials gefunden, sondern meist nur spezielle Artikel.

Ich frage mich, warum WPF bisher so unpopulär ist und es kaum Tutorials gibt. Bis zur Veröffentlich von VS 2008 dauert es ja leider noch recht lange. Hoffentlich ändert sich dann was an der Situation.

Thema: [erledigt] WPF - Images / Bilder verschieben
Am im Forum: GUI: WPF und XAML

Zitat
Original von talla
Naja, dieses 0x0 Pixel Canvas ist in WPF recht beliebt geworden. Durch das geänderte Renderingsystem kann man Controls halt beliebig über andere Controls platzieren und da Canvas das einzige Control mit absoluten Positionsangaben ist nimmt man halt ein 0x0 Canvas und kann dann aber alles was im Canvas ist beliebig positionieren im Window. Achja, was mir da noch einfällt. In WPF sind das alles keine Pixelangaben, sondern logische Einheiten die jeweil 1/96 Inch entsprechen. Mit der Standardauflösung von 96 DPI entspricht dann eine logischen Einheit wieder einem Pixel, das muss aber nicht zwangsläufig sein bei höheren Auflösungen.
Ach so, 0x0 Pixel-Canvas sind üblich. Hehe, das hätte man auch einfacher gestalten können. Was soll's. Inzwischen läuft es wieder einigermaßen bei mir und meinem Projekt. Zu deinem letzten Punkt habe ich einen interessanten Link gefunden: http://www.wpflearningexperience.com/?p=41
Zitat
Original von talla
Warum das per Code bei dir nicht gelingt weiß ich auch nicht, aber was aus deinem XAML generiert wird, kannst ja mitm Reflector und dazu noch dem BAML Plugin(google mal danach, weiß grad keine URI) anschaun und vergleichen was der Unterschied ist zwischen dem manuell erstellten und generierten Code.
Gute Idee! Darauf werde ich bestimmt bei Gelegenheit mal zurück kommen, um die interne Mechanik besser zu verstehen. Für den Moment bin ich allerdings froh, dass ich es überhaupt hinbekommen habe.

Vielen Dank!
Ich würde sagen: "Problem gelöst",
Jack

Thema: Zukunft von WPF?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

*schieb*

Ich vermute, dass es auch stark darauf ankommt, wie viel Werbung Microsoft für WPF macht. Durch die Etablierung mit Vista (das sich widerum bisher nicht so wie erhofft durchgesetzt hat [citation needed]) besteht da vielleicht eine Chance, dass WPF sich im größeren Stil durchsetzt. Ich hoffe es zumindest. Sonst habe ich schon wieder 'nen Mist ohne Zukunft angefangen zu lernen. Ich habe den Thread mal wieder zum Leben erweckt, in der Hoffnung, dass inzwischen, nach Monaten, jemand eine genauere Einschätzung liefern kann. (Eventuelle Grammatik- / Logikfehler im Beitrag sind das Produkt meiner Schlaflosigkeit)

Jack

Thema: [erledigt] WPF - Images / Bilder verschieben
Am im Forum: GUI: WPF und XAML

Vielen Dank für die umfangreiche Antwort!

Ich verstehe das Ganze jetzt um einiges besser! Das ist auch eine recht ungewohnte Situation für mich, weil ich es eigentlich gewöhnt bin im Internet alles zu finden, was ich brauche. Aber nachdem es so wenig Material zu WPF gibt, stehe ich nun des Öfteren verzweifelt alleine da.

Ich habe das nun so gelöst, indem ich per Designer ein 0x0 Pixel großes Canvas in die obere linke Ecke platziert habe, das nun Grundlage für die Bilddependency bildet. Ziemlich... amateurhaft, ich weiß. Lustigerweise habe ich es nicht hinbekommen, ein Canvas per Code zu erstellen, obwohl ich genau die selben Eigenschaften angegeben habe, wie sie der Designer als XAML einfügt.

Mein Tag ist jetzt schon mal im Ansatz gerettet. Wenn mich noch jemand in dem letzten Punkt aufklären könnte, wäre ich... wie nennt man das... glücklich(?).

Jack

Thema: [erledigt] WPF - Images / Bilder verschieben
Am im Forum: GUI: WPF und XAML

Zitat
Original von jaensen
Du musst dein abgeleitetes Canvas dann auch noch in ein Canvas verschachteln, sonst haben die Depency-Properties keine Depency ;-)

Dependency? Wieso muss ich das verschachteln, das will ich doch gerade vermeiden. Aufgrund des akuten Mangels an WPF-Tutorials habe ich das halbe Internet durchsucht und keine weitere Hilfe für das Problem gefunden. Wieso muss das überhaupt über Dependency gemacht werden? Hast du vielleicht noch einen Tipp für mich, wie ich das Problem lösen kann? Ich weiß auch nicht, wie und wo ich da ein weiteres Canvas unterbringen soll.

Vielen Dank im Voraus und Grüße,
Jack

edit: Natürlich sind auch andere dazu eingeladen zu antworten.

Thema: [erledigt] WPF - Images / Bilder verschieben
Am im Forum: GUI: WPF und XAML

Hallo jaensen,

ich habe mal meinen Code von deiner Antwort in dem anderen Thread (siehe dein Link) abgeleitet. Momentan sieht er so aus:


  public class MeinBild : Canvas
  {
    private Image Bild;

    public MeinBild()
    {
      Bild = new Image();
      Bild.Source = BitmapFrame.Create(new Uri(@"..."));
      
      this.Background = Brushes.Black;
      this.Children.Add(Bild);
      this.Width = 100;
      this.Height = 100;
      this.SetValue(Canvas.TopProperty, (double)0);
      this.SetValue(Canvas.LeftProperty, (double)500);
    }

    // bewegt das Bild entlang der Y-Achse zur Position neuePositionX
    public void Fallen(double neuePositionX)
    {
      for (; (double)this.GetValue(TopProperty) < neuePositionX;)
      {
        // mit jedem Durchgang +1 zum Wert TopProperty -> fließende Abwärtsbewegung
        this.SetValue(TopProperty, (double)this.GetValue(TopProperty) + 1);
      }
    }
  }

Wenn ich die Methode "Fallen" ausfühle, passiert allerdings nichts. Vielleicht hat hier noch mal jemand einen Tipp für mich.

Jack

Thema: [erledigt] WPF - Images / Bilder verschieben
Am im Forum: GUI: WPF und XAML

Hallo Freunde.

Ich konnte mich noch nicht ganz mit XAML anfreunden (aber das kommt noch) und mache derzeit noch viel auf die "Windows-Forms-Methode". Soll ja angeblich genauso legitim sein. Soviel zur Vorgeschichte.

Was ich gerne wissen würde ist, wie man die Position eines Bildes ändert. In Windows Forms ging das ja mit location (soweit ich mich erinnern kann). Aber location gibt es nicht mehr (soweit ich das sehe).

Mein Code sieht derzeit so aus:


  public class MeinBild : Image
  {
    public MeinBild()
    {
      Source = BitmapFrame.Create(new Uri(@"C:\..."));
      // <- hier Position definieren
    }

    public void PositionAendern()
    {
      // <- ?
    }
  }

Ziemlich mickrig. Ich hoffe aber, dass ich nicht grundsätzlich etwas falsch mache. Danke für alle Antworten.

Jack

Thema: Wie bekommt man WPF für Visual C# 2005 EE zum Laufen?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Zitat
Original von FZelle
Nur warum willst Du das SDK nicht haben?

Mh. Der Ton deiner Antwort macht mich stutzig. Du willst also implizieren, dass das SDK mit seinen +2GB an Größe einen Nutzen hat? Interessant... Bisher habe ich es zumindest noch nicht (bewusst) gebraucht.

Thema: Wie bekommt man WPF für Visual C# 2005 EE zum Laufen?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

(Ach, hierhin ist mein Beitrag verschwunden. Habe mich schon gewundert...)

Habe jetzt Visual Studio 2008 Beta installiert und damit klappt es. Das Problem mit der Express Edition von VS 2005 ist, dass ich auf mehreren Websites unterschiedliche Verfahrensweisen gelesen habe, und die widerum eine Menge zusätzliche Software benötigt haben, die jedoch nicht mehr vollständig zum Download zur Verfügung steht. Braucht man eigentlich für WPF unter VS 2008 das Windows SDK? Ich habe das zwar installiert, würde es aber gerne wieder loswerden.

Thema: Wie bekommt man WPF für Visual C# 2005 EE zum Laufen?
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

[EDIT]Abgeteilt von WPF vs. GDI+ vs. MDX usw...[/EDIT]

Weiß hier jemand zufällig, ob und wie man WPF für die Express-Version von Visual C# 2005 zum Laufen kriegt?

Jack

Thema: problem mit variable
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ich vermute mal, dass irgendwie die Zahl umgewandelt wird.

Vergleich mal die Werte in einer ASCII-Tabelle (http://en.wikipedia.org/wiki/ASCII). Dort wirst du feststellen, dass 0 den Wert 48 hat und 1 den Wert 49.

edit: Benutz für die Runden bei der Ausgabe den Befehl runden.ToString(). Vielleicht wird es damit behoben.

Jack