Laden...
Avatar #avatar-1724.gif
frisch myCSharp.de - Member
Fachinformatiker Anwendungsentwicklung Coburg / Oberfranken Dabei seit 18.08.2005 2.082 Beiträge
Benutzerbeschreibung
frisch durfte 2 Jahre lang auf eine Schule gehen und dort C und C++ lernen und dann musste er wieder von vorne anfangen... Meine Homepage ist in ASP.net programmiert. Einfach mal vorbeischauen. (Btw: Mir ist Funktionalität wichtiger als Design)

Forenbeiträge von frisch Ingesamt 2.082 Beiträge

22.11.2007 - 14:31 Uhr

Hallo Thorsten1,

  1. Einen Stream erstellen.

Wenn du die Bytes roh hast, dann kannst du

stream.Write(bytes, 0, bytes.length);

benutzen. Wenn nicht, dann

Encoding.ASCII.GetBytes(deinString);

//Offtopic: hat das Icon für den CodeTag ein neues Symbol?

22.11.2007 - 14:23 Uhr

Wunderbar, werde ich mir zuhause anschauen. Ich weiß schon wo der Fehler ist und woran es liegen könnte 😁

Danke für die Info.

//Edit: Hab den Bug gefixed

//Update: V 0.52 veröffentlicht

21.11.2007 - 16:22 Uhr

Das ist sehr schlecht...

Fehlermeldung? Eintrag im Log?

u. a. kannst du mal folgendes versuchen:

Im Programmordner die configuration.xml und downloads.xml sichern und mal aus dem ordner nehmen.

//Edit:
Neue Version release V0.48

Sry SteelWarrior aber deinen Bug konnte ich nicht finden 🙁

20.11.2007 - 18:31 Uhr

Update 0.45

V 0.45:

  • Added: Finally the possibility to login to Stage6 🙂
  • Changed: Timeout can now be set by the user
  • Changed: Downloadsettings (timeout and retries) will now be refreshed when starting a download
  • Changed: Display Log-Button will now become Red when a logmessage has been added
  • Fixed: An error when loading a downloadfile with downloads containing incomplete informations

@StellWarrior: Achso! Gut das werde ich mir mal mit in die Featureliste aufnehmen. Was ich außerdem noch machen muss, ist ein kontinuierlicher Connection retry bei Verbindungsabbruch. Damit die Downloads auch weiterladen, wenn der Router mal neugestartet hat 😉

Werde jetzt erstmal die neue Ver hier Uploaden.

Ist noch etwas experimentell diese Ver also bitte um Rücksicht.

//Edit: Kleineres Update bezüglich Layout und ein paar Routinen

V 0.46

V 0.46:

  • Added: Image-Preview (Works only on new Downloads)
  • Added: Duration-Information (Works only on new Downloads)
  • Changed: Layout
  • Fixed: Timeout issue
  • Fixed: Retries on first searchpage
  • Fixed: Duplicates on Search

Some major Codeimprovements!

16.11.2007 - 19:50 Uhr

Hallo t0mmi,

Stichwort TcpChannel, die Forumsuche dürfte dir da weiterhelfen. Sowas gabs bestimmt schonmal hier.

16.11.2007 - 15:58 Uhr

Hallo,

manche kennen vielleicht mein aktuelles Projekt. Momentan bin ich dabei den Login zu realisieren.

Ich möchte das so machen:

1. Login Page holen
2. Benutzereingaben eintragen
3. Login posten
4. Session-Cookie auslesen

Leider stellt sich das als ziemlich problematisch heraus.

1. ist kein Problem

**2. **Ich kann über die url "http://stage6.divx.com/users/login/login-post?email=[0]&password=[1]" die Userdaten übergeben wobei [0] die Benutzeremail ist und [1] das Benutzerpasswort. Wenn ich die Url nun mit meinen Angaben direkt im Browser aufrufe, sagt mir Stage6, dass die Email bereits einem Benutzer zugeordnet ist.

Ich habe mir soweit mal die Login-Page angesehn, da gibts noch ein zusätzliches input mit dem namen "account". Ich dachte, wenn ich "account=true" and die URL anhänge, weiß Stage6, dass ich nicht neu registrieren möchte. Das klappt aber leider auch nicht.

Hierzu wärs gut, wenn mir jemand weiterhelfen könnte.

**4. **Stellt in sofern ein Problem dar, weil ich einfach keine Cookies erhalte. Ich habe mir soweit mal angeschaut, welche Cookies es alles gibt.
Die Cookies sind:
s6_session
s_cc
s_sq
s_vi

wobei hier nur s6_session für mich relevant ist. Frage ist nun, wie hole ich mir den Cookie?

Ich habe das so gemacht:

  1. HttpWebRequest erstellt
  2. CookieContainer angegeben
  3. Response geholt

jetzt dürften doch eigentlich die Cookies in meinem Container vorhanden sein oder gehe ich die Sache falsch an?

Wäre echt hilfreich, wenn mir hier jemand weiterhelfen könnte.

//Edit: Titel angepasst

15.11.2007 - 15:14 Uhr

Punkt 7: Das Wort "Display ..." in den Menüs vor Log or Properities finde ich als unübersichtlich. Ist eigentlich überflüssig, oder? 😉

Kann man sehen wie man will. Ich denke mal die meisten denken garnicht, dass es checkable ist.

Punkt 8: Versionsnummer der Datei 1.0.0.0 zu der Version 0.36, die du angibts passt nicht.

Ich selbst gebe hier noch garkeine Versionsnummer an.

Kann dir die Funktion/Programm gerne mit Sourcecode zukommen lassen

Nein Danke, mein Programm war ursprünglich für Stage6 gedacht und das wirds halt auch erstmal bleiben...

Mir ist erstmal wichtig, dass ich als nächstes mal ein Login in Angriff nehme.

14.11.2007 - 20:58 Uhr

Habe jetzt das mit dem unfertigen downloads implementiert 😁

Changelog:

V 0.36:

  • Changed: Enabled opening a file while it is downloaded

V 0.35

  • Added: Windowposition and Size will be saved now (and so will shown boxes and stuff)
  • Added: Setting for different Downloadpositions for completed and incompleted downloads
  • Added: New column in the downloadlist for showing the downloaded size
  • Changed: Propertiesbox - set a static height box width clickable links for direct visiting of the page/videolink/download
  • Changed: The max retries on an error can be set by the user now
  • Changed: Logfilesaving is optional now
  • Fixed: The program now tells you if the site is currently under maintenance instead of giving a normal error
13.11.2007 - 21:10 Uhr
  1. und 2. klingen sehr gut, das werd ich noch zu den features adden wenn sich die zeit findet.

  2. und 4. ist schon gefixt, es wird bei nem error max. 5 mal retried und die boxen sind auch weg, es gibt dafür jetzt ein logfenster.

  3. Ich versuch demnächst das problem noch zu fixen, aber deine Idee klingt auch nicht schlecht. Werde darüber nachdenken.

12.11.2007 - 17:56 Uhr

Die Sache ist die, dass Stage6 eben das herunterladen direkt von sich selbst anbietet während man bei anderen Videoportalen nur durch einen Workaround an die Videofiles rankommt.

Gantz war imho total in die Länge gezogen. Es gab einfach viel zu wenig Action pro folge, das hat schon ziemlich genervt. Und ja das Ende fand ich total idiotisch...

Ich schau zz. Samurai Champloo. Sehr genial wie ich finde und ab der 6. Folge gibts das ganze in deutscher Synchro. 1-5 hab ich auf deutsch nich gefunden 🙁

Werde heute Abend noch ein paar Bugs fixen. u. a. funktioniert das starten etc. mit multiple Downloads noch nicht.

Changelog

V 0.33

  • Added: Simple sorting of downloads when clicking on the columnheaders
  • Changed: When getting timeout on search, the current page will now be skipped instead of aborting the whole search progress
  • Changed: Log has now 3 columns instead of 2
  • Fixed: Multiple download action was bugged

V 0.31

  • Added: Support for start/stop/refresh... multiple files

V 0.30

  • Added: List for the logs
  • Added: Logfile support (writes a log if the loglist is to long and writes the log on application exit)
  • Added: Support of deleting multiple downloads
  • Changed: Some minor changes on the layout
  • Changed: Timeout for information gathering
  • Fixed: Critical Bug with Messageboxes therefore replaced the messageboxes with a log
  • Fixed: Some minor bugs
  • Fixed: When doubleclicking downloads with 100% they will be executed now (was redownloading when state was standby after loading the downloads from the xml file)
  • Fixed: Forced searchcancel on closing the application
  • Fixed: Download was reset on information refreshing
11.11.2007 - 19:47 Uhr

Ich denke schon, dass es erlaubt ist. Das downloaden der Videos von Stage6 ist ja schließlich auch legal.

Momentan ist es noch nicht geplant, YouTube etc. zu unterstützen, ich denke mal, dass es dann auch nicht mehr legal wäre.

08.11.2007 - 22:45 Uhr

Changelog:

V 0.28

  • Added: Possibility to resume downloads
  • Added: Autoretry (max 3) on downloaderror
  • Fixed: When having an error the program needed a longtime to recognize that therefore reduced the timeout

V 0.25

  • Added: Possibility to refresh the download informations (useful on timeouts)
  • Added: The downloadlist will try to save the downloads now and load them on next startup (no resume option yet you have to start the download again)
  • Fixed: Critical bug when deleting downloads (files have been deleted no matter what choice the user took)

V 0.23

  • Added: Method to search tags
  • Added: Possibility to hide the itemproperties
  • Changed: Method for displaying results (will be displayed while searching now cause of the great results)
  • Fixed: Critial bug with search
  • Fixed: Duplicates in the results
  • Fixed: Some Major bugs

V 0.22

  • Fixed: Small bug with downloads when autodownload is off

(Bitte den direkten Downloadlink benutzen oder von der Homepage runterladen, ich komme leider nicht mit dem Synchronisieren hinterher da >>> Doppelte Arbeit 😦)

07.11.2007 - 09:15 Uhr

@egrath: Ist das Ubuntu oder nur ein Ubuntu-Skin? Falls ersteres, wie programmierst du darauf c# Progs?

07.11.2007 - 00:18 Uhr

Hallo edepede,

die Webseite und die Anwendung befinden sich auf ein und der selben Maschine hoffe ich?

Da gäbe es wiele Möglichkeiten.

Auf die schnelle fällt mir jetzt IPC oder COM ein.

07.11.2007 - 00:16 Uhr

Ich bin zz. wieder bisschen schlechter drauf, hat was mit Frauen zutun aber darauf möchte ich nicht näher eingehen 😉

Jedenfalls pass ich mein Windows meiner Stimmung an 😜

Falls jemand fragt, der Wallpaper ist wie immer von DeviantArt 😁 aber ich hab mich noch nicht endgültig für diesen entschieden.

06.11.2007 - 13:21 Uhr

Einfach das KeyDown-Event abfangen und je nach KeyCode die Position wieder setzen.

06.11.2007 - 11:23 Uhr

Links unter ressourcen findest du eigentlich die besten freien Bücher. die Openbooks sind ganz gut.

06.11.2007 - 11:22 Uhr

Oha, wenn dem wirklich so ist dann wohl eher eine sehr unperformantes DBMS wenn man mit den anderen Systemen vergleicht.

06.11.2007 - 11:08 Uhr

Hallo CyberHunter,

scheinbar gibts ein paar Verständnisfragen.

Ist mir neu, dass XML ein DB-System ist. Es ist halt eine Möglichkeit Daten in einer bestimmten Form abzulegen.

Das DS per ReadXml zu füllen, ist wahrscheinlich für dich nicht die beste Lösung, da du wenig einfluss drauf hast, wie das DS am Ende aussieht wenn du die Ausgabeform der XML-Datei nicht beeinflussen kannst.

Du könnst aber versuchen ein DS zu füllen und ein Zweites DS mit nur einer Table erstellen und dann die Tables des ersten DS mergen.

06.11.2007 - 11:05 Uhr

Hallo eXcipio,

also erstmal herzlich willkommen.

  1. Wirst du so wenig Chancen hier haben, da die Grundkenntnisse zumindest erforderlich sind und wir eher gerne bei logischen Problemen helfen 😉 aber ich würde eine ListView verwenden, da lassen sich schön die Icons einbinden.
05.11.2007 - 21:38 Uhr

Update V0.21

Changelog:

V 0.21

  • Added: information for Searchprogress
  • Added: Options (which will be saved)
  • Added: Information about remaining download time
  • Added: Filesize information
  • Added: More detailed downloadstates
  • Changed: Moved Searchresults to a subgroup for sorted access
  • Some Major Bugfixes
05.11.2007 - 18:03 Uhr

Hatte ganz vergessen, dass du ja ein XmlDocument benutzt. Mit einem Eigenen Objekt würde es vielleicht besser funktionieren, du kannst dann ja dieses Serialisieren. Sowas ist nicht wirklich schwer.

05.11.2007 - 17:54 Uhr

Hallo IgG,

steht denn in der XML-Datei quot? Oder wurde es schon beim schreiben umgewandelt?

Du könntest dir doch einen eigenen Wrapper schreiben und dann bei den Properties in der Get-Methode eben eine Funktion des Wrappers aufrufen und die Variable übergeben.

05.11.2007 - 17:32 Uhr

Original von VuuRWerK
Also ich hab standardmäßig 96dpi und es verschiebt sich nix, liegt wenn dann noch an etwas anderem.

Gut Schuß
VuuRWerK 😉 Nope sowas liegt im Normalfall an der DPI. Sowas ist bei jedem Projekt nachvollziehbar und norman_timo konnte den Fehler ja damit bereinigen/reproduzieren.

Sowas haben wir bei unserer Anwendung auch, allerdings gibts bei unseren Kunden keine Probleme mit dem ändern der DPI-Größe.

05.11.2007 - 17:29 Uhr

Hallo tom-essen,

kannst ja mal das VS Setup starten und ne Reparatur drüber laufen lassen.

03.11.2007 - 13:11 Uhr

Hallo,

Auszug aus meiner Seite:

Stage 6 VideoDownloader V0.1Beta

Ich sitz momentan an einem Programm, welches das Herunterladen von Stage6-Videos ermöglicht. Ich habe seit gestern großen Fortschritt damit gemacht, trotzdem steht das Programm noch in den Startlöchern.

Features:

  • Suchen von Videos auf Stage6
  • Downloaden der Videos

Coming soon:

  • Speichern der Downloadliste
  • Speichern der Einstellungen
  • Login auf Stage6

Requirements:

  • .Net Framework 2.0 or higher
  • Internet-Connection

Den Download gibts hier.

Externer DownloadLink

[Entfern da ich dauernd neue Vers rausbringe... ich komme einfach mit dem Sync nicht hinterher und habe auch keine Lust mehr auf doppelte arbeit. Also externen Link benutzen]

03.11.2007 - 12:14 Uhr

Spitze, dank dem Thread habe ich die Lösung jetzt gefunden.

Da war auf meiner Seite wohl einfach nur ein Verständnisproblem. Ich bin immer davon ausgegangen, dass mein Buffer vollständig befüllt wird.

03.11.2007 - 03:35 Uhr

Verwende

backgroundWorker.ReportProgress(int prozent, object userObject);

um auf Formelemente zuzugreifen.

Wobei du als userObject alles mögliche verwenden kannst und dieses dann in der ProgressChanged zurückcasten kannst.

03.11.2007 - 03:33 Uhr

Hallo,

ich arbeite zz. an einem Downloader-Programm. Ich hole mir die Daten einer Datei via HttpWebResponse und speichere diese dann per FileStream.

Was ich nicht verstehe, die Daten für ein und dieselbe Datei verändern sich bei jedem neuen Downloaden der Datei.

Muss ich etwa eine CheckSum-Prüfung selbst machen?

Muss ich das Lesen des Streams min. 2 mal machen und vergleichen?

Oder gibts vielleicht ein Problem da das ganze im BackgroundWorker laufen lassen hab?

Hier mal die Methode in der das alles stattfindet:

HttpWebRequest request = null;
        HttpWebResponse response = null;
        Stream reader = null;
        FileStream writer = null;

        if (currentDownloadPosition == 0 && File.Exists(targetLocation))
            File.Delete(targetLocation);

        if (!Directory.Exists(Directory.GetParent(targetLocation).FullName))
        {
            Directory.CreateDirectory(Directory.GetParent(targetLocation).FullName);
        }

        try
        {
            byte[] buffer;
            request = (HttpWebRequest)HttpWebRequest.Create(sourceLocation);
            response = (HttpWebResponse)request.GetResponse();

            reader = response.GetResponseStream();
            writer = new FileStream(targetLocation, FileMode.CreateNew, FileAccess.Write, FileShare.None, BUFFER_SIZE, FileOptions.None);

            long contentLength = response.ContentLength;
            long currentPosition = 0;
            long left = contentLength;
            int newPercentage = 0;

            while (contentLength > currentPosition)
            {
                try
                {
                    if (bgWorkerDownloader.CancellationPending)
                    {
                        break;
                    }

                    left = contentLength - currentPosition;

                    if (left > BUFFER_SIZE)
                    {
                        left = BUFFER_SIZE;
                    }

                    buffer = new byte[left];

                    reader.Read(buffer, 0, (int)left);
                    writer.Write(buffer, 0, (int)left);

                    currentPosition = currentPosition + left;
                    newPercentage = (int)((currentPosition * 100) / contentLength);
                    if (newPercentage != percentageComplete)
                    {
                        percentageComplete = newPercentage;
                        bgWorkerDownloader.ReportProgress(percentageComplete);
                    }
                }
                catch (Exception ex)
                {
                }
            }

            if (bgWorkerDownloader.CancellationPending)
            {
                File.Delete(validLocation);
                e.Cancel = true;
                return;
            }
        }
        catch (Exception ex)
        {
            OnDownloadError(this, new DownloadEventArgs(this));
        }
        finally
        {
            if (response != null)
                response.Close();
            if (reader != null)
                reader.Close();
            if (writer != null)
                writer.Close();

        }
02.11.2007 - 10:05 Uhr

Hallo serial,

das Buch finde ich schon soweit in Ordnung das haben wir in der Firma.

31.10.2007 - 10:19 Uhr

Hallo mipa_acc,

DateTime dt = DateTime.Parse("12.10.2007 11:53:42");

liefert mir das richtige Ergebnis und .AddHour kannst du dann ja benutzen.

31.10.2007 - 09:18 Uhr

Frage an herbivore: Ist die API in jedem WindowsBS enthalten?

Gibts dazu irgendwelche Tutorials wie man die Ansteuert usw.? Ich google derweil mal ein bisschen rum vielleicht findet sich ja was dazu 🙂

31.10.2007 - 09:15 Uhr

Original von herbivore
Hallo frisch,

nö, auch für eine Größenbegrenzung stimmt es nicht, nämlich wenn nämlich beide Bedingungen zutreffen, aber aufrund der Seitenverhältnisse die obere Berechnung die korrekte wäre.

herbivore

Wieso denn das?

Nehmen wir mal an, du hast ein bild mit 120x150 und maxGröße ist 100x100, dann wäre das bild nach der ersten Berechnung von der Höhe her immernoch zu groß, deshalb MUSS beides überprüft werden, da eben die Größe nach dem Breiteskalieren immernoch zu groß sein kann.

30.10.2007 - 16:59 Uhr

Original von herbivore
und was ist, wenn keine if-Bedigungen erfüllt ist? Und was ist, wenn sie beide erfüllt sind, aber die obere Berechnung die korrekte? 🙂

In Prinzip braucht man doch nur ein if-else, dass entscheidet, welche Berechnung korrekt ist.

  1. Wenn keine if-Bedingung erfüllt ist, dann ist das bild kleiner. Hm habe garnicht an das Größtmögliche darstellen gedacht sondern aufs begrenzen der Maximalen Größe 😁

  2. In diesem gewünschten Fall stimmt das. Für eine Größenbegrenzung wäre die Aussage falsch 😁

30.10.2007 - 16:49 Uhr

Hallo stef,

float maxWidth = 100;
            float maxHeight = 100;
            float width = 80;
            float height = 240;

            if (width > maxWidth) {

                height =
                    (maxWidth / width) * height;

                width = maxWidth;
            }

            if (height > maxHeight) {
                width =
                    (maxHeight / height) * width;

                height = maxHeight;
            }

Müsste klappen. Simple Berechnung und schon zu oft angewendet 😉

30.10.2007 - 15:00 Uhr

Original von T.M.
Guten Abend,
ich wollt mal fragen, ob ihr Seiten bzw. Stichwörter kennt mit denen man Wallpaper in der Art findet, wie der, der von frisch am 10.11.2006 um 19:06 gepostet wurde (is schon ein bisschen länger her, ich weiß^^). Hallo,

ich lade meine Wallpaper Grundsätzlich von deviantart.com. Wenn du dich da in die Wallpapersektion begibst und dann dein Suchwort eingibst, dann erhältst du auch nur Wallpaper.

Ich machs aber auf einfachere art, indem ich mir einfach jede Woche einmal die populärsten Wallpaper der Woche anschaue 😁

29.10.2007 - 17:51 Uhr

Original von MarsStein
Hallo,
ich würde einfach mal davon ausgehen daß sich die Daten auf der Geldkarte ändern -> ähnlich wie bei Telefonkarten. Was? Das wär aber schon heftig, die Daten zu ändern, nur um das Alter zu prüfen. Oder meinst du, wenn man mit der Karte gleich am Automaten bezahlt?

29.10.2007 - 16:20 Uhr

Wenn man es aber "normal" macht wäre Dispose die bessere Variante? Mit normal meinst du was?

Keiner hindert dich, den Stream erst zu schliessen und dann zu disposen 😉

29.10.2007 - 16:06 Uhr

Hallo B1rd,

soweit ich weiß gibt Close nur den Stream frei, sodass andere darauf zugreifen können.

Bei Dispose zerstörst du das Objekt also schmeißt es auch aus dem Speicher.

Ich benutze in der Regel aber immer z. B. using(StreamReader

Soweit Dispose vom Objekt unterstützt wird, ist es gut, eine using-Klausel zu benutzen, wenn du das Objekt nur innerhalb einer Methode verwendest.

//Edit: Ich und meine Grammatik -.-

29.10.2007 - 11:21 Uhr

Hallo diana,

machs doch über

dataGridViewRow.DataBoundItem

//Edit: zu langsam 😜

29.10.2007 - 10:10 Uhr

Hallo csharpstarter,

über das tick_Event garnicht. Warum möchtest du denn überhaupt den timer starten? Führe doch eine Methode aus der du die PictureBox (also den sender) übergibst und darin dann prüfst.

26.10.2007 - 16:46 Uhr

Hallo Muphin,

könnte es evtl. daran liegen, dass mehrere Threads die gleiche Variable setzen möchten?

Verwende am besten ein Locking.

26.10.2007 - 16:44 Uhr

Was ist an

foreach (ListViewItem item in listView1.Items) {
                foreach (ListViewItem subItem in item.SubItems) {
                    string subItemValue = subItem.Text;
                }
            }

falsch bzw du kannst ja den ColumnKey verwenden mit item.SubItems["columnName"].

26.10.2007 - 16:26 Uhr

Wie sieht denn der QC aus, mit dem du die SubItem-Values ausliest?

26.10.2007 - 16:02 Uhr

Hallo Speedy_92,

Stichwort ListViewItem.SubItems

26.10.2007 - 12:05 Uhr

X(

Und welchen Ratschlag hast du jetzt bzw. kannst du mir den Link zum Thread geben? Finde ihn nicht sry.

26.10.2007 - 11:42 Uhr

Frage: Geht es jetzt ums ansteuern von COM-Schnittstellen oder zum Kommunizieren 2er Programme über das Netzwerk?

//Edit: Habe mir OPC mal angeschaut, allerdings tuen sich da bei mir Verständnisfragen auf aber das ist ein anderes Thema 😉

26.10.2007 - 11:40 Uhr

Hallo,

habe ein notifyIcon welches einen BalloonTip anzeigt. Dies klappt unter XP auch soweit. Unter Win98 macht es mir allerdings Probleme. Das notifyIcon wird unter 98 zwar angezeigt, jedoch kein Balloon.

Problem ist jetzt folgendes:

Ich reagiere auf das notifyIcon_BalloonTipClicked-Event um eine Methode aufzurufen. Unter XP kein Problem, jetzt muss ich das ganze aber unter 98 handlen, d. h. ich kann ja das notifyIcon_Click-Event nutzen.

Wenn ich jetzt allerdings nur das _Click-Event nutze, erhalte ich keinen event wenn ich den Balloon anklicke.

Beim Click auf das Icon erhalte ich aber unter XP beide Events (Click und BalloonClick).

Wenn ich also keine OS-Prüfung einbaue, habe ich entweder unter Win98 garkeinen Event oder unter XP einen doppelten Eventaufruf beim IconClick.

Kann ich Win98 so einstellen, dass dieses auch balloons anzeigt? In der MSDN ist es ja unter supported Platforms.

26.10.2007 - 10:59 Uhr

@herbivore: Nett gemeint, allerdings sollte man imho wenn man schon den BGWorker nutzt, dessen funktionen auch benutzen was das aktualisieren von Controls angeht 😉

Ich glaube langsam, dir gefällt der Worker nicht so toll oder?

26.10.2007 - 10:17 Uhr

Ein int hat natürlich NIE Nachkommastellen. Richtig, allerdings wäre imho folgendes eleganter:

float inVar = 0.9f;
int compVar = 0;
int.TryParse(intVar.ToString(), out compVar);

if(compVar != inVar) {
  //Nachkomma
}
else {
  //Kein Nachkomma
}