Laden...
R
robbyrc myCSharp.de - Member
Fachinformatiker / Anwendungsentwicklung Passau Dabei seit 17.02.2006 317 Beiträge
Benutzerbeschreibung

Forenbeiträge von robbyrc Ingesamt 317 Beiträge

21.02.2008 - 21:33 Uhr

Hi,

also der ReSharper kanns auf alle Fälle.

Lg,
Daniel

04.02.2008 - 10:21 Uhr

Hi,

das Programm an sich gehört schon in den Programme-Ordner, aber die Dateien, z.B. Konfigurationsdateien oder ähnliches, die von deinem Programm erzeugt oder geändert werden, sollte dan in den Ordner nicht rein!

Mfg,
Daniel

18.01.2008 - 23:57 Uhr

Hi,

also diese erkennungen, ob eine datei schon vorhanden ist (auch mit Versionsnummer) können auch Freeware-Installer wie NSIS oder Inno Setup (Google fragen)...

Beim VS2005 Pro ist auch ein Installer dabei (windows installer), der sollte das auch können.

Mfg,
Daniel

11.01.2008 - 20:43 Uhr

Hi,

Stichwort: Rekursive Suche...

In google hab ich ein Beispiel der Rekursiven Dateisuche gefunden, das sollte mit geringen änderungen eigentlich für die Ordnerauflistung auch gehen.:

http://www.computerleben.net/artikel/Verzeichnis_rekursiv_durchsuchen-290.html

Mfg,
Daniel

11.01.2008 - 20:21 Uhr

Hallo,

so würde es am einfachsten gehen:


            // Verbindung zur Daten erstellen
            OleDbConnection conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\\MeineDatenbank.mdb");

            //  Verbindung öffnen
            conn.Open();

            // Daten abfragen
            OleDbDataReader readData = new OleDbCommand("SELECT * FROM Tabelle",
                                                        conn).ExecuteReader();

            // Erhaltene Daten durchlaufen
            while (readData.Read())
            {
                // Erste Spalte in die Liste hinzufügen
                listBox1.Items.Add(readData[1].ToString());
            }

            // Verbindung schließen
            conn.Close();

In deinem Form brauchst du natürlich eine Referenz auf OleDb:
Also ganz am Anfang der Form:


using System.Data.OleDb;

mfg,
Daniel

09.01.2008 - 19:33 Uhr

Hi,

ich kenn zwar jetzt das Programm nicht genau, aber ich denke, dass es da nur hilft, den Profiler in die Ausnahmeliste von Norton aufzunehmen, oder Norton komplett zu deaktivieren.

Um zu Profilen wird der nämlich den Zugriff auf den Arbeitsspeicher brauchen, den Norton allerdings verwehrt...

Also am einfachsten Norton während dem Profiling deaktivieren 😉

Mfg,
Daniel

09.01.2008 - 16:19 Uhr

Datenbank mit ADOX erstellen

Ist zwar Visual Studio 2003 und VB.NET, geht aber mit VS 2005 und C# genauso.

09.01.2008 - 14:33 Uhr

Dann sollte es schon gehen 😉
Du musst halt, ich denke da liegt das Problem, dem Server auch sagen, dass in dem Ordner, wo du das hochlädst, eine ASP.NET Anwendung liegt.

Im IIS machst das mit Webanwendung erstellen oder so...

Ich weiß jetzt leider auch nicht wie du deinen server so konfigurieren kannst, dass er die ASP Seite nimmt..

ABer das veröffentlichen an sich passt so.

09.01.2008 - 14:25 Uhr

Hast du auf dem Webserver, wo du die Dateien hochlädst, schon ASP.NET, IIS und das 2er .NET Framework drauf?

Wenn nicht, werden die ASP-Dateien einfach nur "so" angezeigt, und dann erscheint der Text, weil die Datei ohne ASP nicht richtig verarbeitet wird.

09.01.2008 - 13:40 Uhr

waren ein paar dlls, die aber zu dieser Meldung geführt haben: Dies ist eine Markierungsdatei, die vom Vorkompilierungswerkzeug generiert wurde, und sollte nicht gelöscht werden!

Hi,

das an sich ist ja eh richtig.
Die Quelldateien werden kompiliert, und dann solche Dateien ausgegeben.
Dies hat denn sinn, dass nicht jeder dir in den Quellcode deiner Seite reinschauen kann.

Es genügt, die Dateien, die generiert wurden, auf deinen Server hochzuladen, und dann kannst du die ASPX-Seiten auch ganz normal öffnen.

Mfg,
Daniel

09.01.2008 - 08:18 Uhr

Der User im Beispiel bekommt ja die SecurityExcepton auch nur, wenn er die Anwendung vom Netzwerk starten will.

Bei einer Lokalen installation tritt diese Exception ja im Regelfall eh nicht auf.

07.01.2008 - 22:43 Uhr

Mhh während der installtion ist ganz komisch.
Wird in der installation was ausgeführt, oder nur die dateien kopiert und registry einträge gemacht?

mfg,
daniel

07.01.2008 - 21:36 Uhr

Hi,

das Problem wurde den ich oben bereits gepostet.
Da es eine OleDbException ist, tritt irgendein Problem mit einer Datenbankverbindung auf.

  • Benutzt du für Crystal Reports eine Datenbankverbindung?
  • Wenn ja, wie wird die aufgebaut?
  • Schau mal ob du irgendwelche Hardgecodeten Connection-Strings im Projekt hast.

Mit dieser Fehlermeldung, die du da bekommst, kann man leider fast nichts anfangen. Ging mir bei einigen Projekten auch so. Da hilft meistens nur durchprobieren.

mfg,
daniel

02.01.2008 - 16:32 Uhr

Hab das Problem schon verstanden, aber die Versionsnummern intern sind ja gleich.
Es "heißt" ja im Endeffekt nur anders.

Ich habe folgendes gemacht:

  • Unter XP (MDAC 2.8) eine Anwendung mit Verweis auf ADOX 2.8 erstellt.

  • Diese Anwendung erzeugt im Programmordner eine neue Jet-Datenbank.

  • Anwendung unter WinXP kompiliert

  • Ausgabeordner in Vista kopiert

  • Gestartet

  • Datenbank erzeugt, trotz verweis auf MDAC 2.8

02.01.2008 - 11:46 Uhr

Unter Vista brauchst die ja dann nicht mehr 😉

Mein Installer prüft die "FileVersion" der Datei "[SystemFolder]msdart.dll" daraufhin, ob Sie größer "2.80" ist.

Unter Vista kommt die Abfrage mit True zurück, MDAC wird daher nicht installiert.
Selbes auf XP SP 2.

Unter Windows 98, 2000 oder XP ohne SP2 wirds hingegen schon installiert.

01.01.2008 - 21:04 Uhr

Hi,

du müsstest folgendes machen:


        private static System.Windows.Forms.DialogResult eMsgBoxResult;

Sonst kommst du von der Statischen Main nicht auf die normale Variable.

Warum willst du das überhaupt zwischenspeichern?
Wenns nur Ja oder Nein gibt, reicht ja ein If-Else auch ohne Zwischenspeichern des Ergebnisses.

mfg,
Daniel

01.01.2008 - 19:42 Uhr

Und genau diese Datei gebe ich seits die gibt weiter... Wäre ja sonst ein käse, wenn man die nicht weitergeben dürfte.

Lexware z.B. hat die MDAC auch auf den CD`s drauf.

Laut internet gibts z.b. für InstallShield bereits ein Mergemodul, in dem auch MDAC 2.8 enthalten ist 😉

lg,
daniel


Runtime Components

Subject to the license terms for the software, the following files may be distributed unmodified:

Windows Installer 2.0 (InstMSIA.exe/InstMSIW.exe)
Windows Installer 3.1 (WindowsInstaller-KB893803-v2-x86.exe)
msstdfmt.dll
vs_piaredist.exe

gefunden in Microsoft-VisualCpp2005-Redist.txt

Und im Packages-Ordner für den Setup-Bootstrapper von Visual Studio 2005 ist die 2.8er MDAC auch drin 😉

01.01.2008 - 19:21 Uhr

Ich glaube mich erinnern zu können dass in den redist-Dokumenten vom Studio drinnensteht, dass du das ausliefern darfst.

Du findest die MDAC 2.8 ja auf eigentlich jeder Programm-CD, und ander Software von großen herstellern.

Ich habe die MDAC_TYP.exe von MS heruntergeladen, und dann ins Setup integriert. Bei der Installation wird ja keine gültigkeitsprüfung durchgeführt, und bei Win98 gibts ja so ne prüfung gar nicht mehr.

Auch unter http://msdn2.microsoft.com/en-us/library/ms693148.aspx steht nichts davon dass du es nicht weitergeben darfst.

01.01.2008 - 19:07 Uhr

Also wenn du die ADO Ext. 6.0 einbindest, geht dies auch auf anderen Rechner, wenn MDAC 2.8 installiert ist.
Auf dem umgekehrten Weg gehts ja auch 🙂

Es steht nur Version 6.0 drinnen, da es unter Vista ja anders heißt.

Da MDAC 2.8 auch auf Win98 läuft, sollte das kein Problem sein.
Müsstest halt bei ner Installation auf einem Win98-System prüfen, ob MDAC 2.8 vorhanden ist.

01.01.2008 - 19:05 Uhr

Was muss ich tun, um eine ausführbare Datei zu erhalten, in der alle notwendigen Verweise (in meinem Fall MySql.Data.dll) mitkompiliert werden? Auf einen Installer könnte ich gerne verzeichten, ich möchte lediglich das Programm in einer ausführbaren Datei haben!

Du musst im einfachsten Fall nur die MySql.Data.dll mit in das Verzeichnis kopieren, in dem deine Programm-Exe liegt.

Beim starten der Exe auf einem anderen PC sucht er die MySql.Data.dll dann im Programmverzeichnis wo die Programm-Exe liegt, und benutzt die MySql.Data.dll dann...

Mit manchen Programmen, z.B. .NET reactor, kannst du die MySql.Data.dll direkt noch in deine Programm-EXE einbinden.

Am einfachsten ist allerdings das mitkopieren der dll.

01.01.2008 - 14:08 Uhr

Die Referenz ist bei SharpDevelop unter den COM-Objekten und heißt "Microsoft ADO Ext 2.8 for DLL and Security".

Nach dem Hinzufügen der Referenz musst du noch:



using ADOX ;

in deine CS-Datei einfügen.

01.01.2008 - 13:29 Uhr

Unter Vista ist aber MDAC 2.8 installiert, daher sind normalerweise auch die ADO Extensions 2.8 installiert sein.

Bei meinem Testprojekt (erzeugt Datenbank via Microsoft ADO Ext. 2.8 for DDL and Security) funktioniert alles unter Vista ohne zusätzliche installation oder Probleme.

Von Microsoft`s seite ist ja für die .NET Framework installation sovieso ein MDAC 2.8 auf dem zu installierenden System empfohlen.


Catalog ADOXCatalog = new CatalogClass();
ADOXCatalog.Create("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Environment.GetFolderPath(Environment.SpecialFolder.Desktop) + "\\newdata.mdb");

Hab ich gerade gefunden:

Windows Data Access Components (Windows DAC) 6.0 is the version of the data access technologies—ADO, OLE DB, and ODBC—included in the Windows Vista operating system. Microsoft Data Access Components (MDAC) includes earlier versions of the same technologies, and version 2.8 was included in Windows XP and Windows Server 2003. There is also a redistributable version, MDAC 2.8 SP1, which should only be used with Windows 2000. Windows DAC includes some changes to work with Windows Vista, but is almost entirely functionally equivalent to MDAC 2.8.

Also unter Windows war MDAC 2.8 / MDAC 2.8 SP1 Standardmäßig dabei, ab Windows Vista heißt das ding also Windows DAC 6.0 (ist aber fast das gleiche wie MDAC 2.8) 🙂

01.01.2008 - 01:01 Uhr

Hi,

die Version 2.7 müsste mit Version 2.7 von den Data Access Compontents (MDAC) mitgeliefert werden.

Die Bibliothek ist ja auch mit nicht-.net-sprachen verwenbar.

Vg,
Daniel

19.12.2007 - 15:14 Uhr

Wenn du die Localizable auf True setzt, dann werden für verschiedene Sprachen verschiedene RESX-Dateien erstellt.

Wenn du nun was im Designer änderst, wird das NICHT mehr im code gespeichert, sondern eben in diese RESX-Datei gespeichert.

Jetzt kann es bei dir gewesen sein, dass der die Änderungen, die du gemacht hast, in einer anderen RESX-Datei gespeichert hat (z.B. in der RESX für Englisch).

Wenn du dein Programm nun startest, sind die Deutschen Einstellungen, also auch der Dialog in Deutsch, anders als im Englischen.

Deswegen kann es sein, dass du die Änderungen nicht gesehen hast, da sie in einer anderen Sprache nur vorhanden waren.

MFg,
Daniel

19.12.2007 - 15:07 Uhr

Hi,

übernimmt er es, wenn du die Location oder den Text in der RESX-Datei manuell änderst und neu kompilierst?
Bitte drauf achten, dass du während des Manuellen Editierens den Forms-Designer nicht offen hast 😉

btw: Kann es sein, dass du in den Eigenschaften der Form das Feld "Localizable" auf True hast?

mfg,
daniel

13.12.2007 - 16:14 Uhr

Hallöchen,

also ich habe mich letzten Monat auch dazu entschieden, den .NET Reactor zu kaufen.
Bisher konnte ich auch nichts daran beklagen - im Gegenteil.

Zu dem Preis findest du solche Software in diesem Segment nicht, und der kann (was ich brauche) alles.

Auch das Visual Studio-Plugin macht es einem einfach, in einem Projekt automatisch mehrere Assemblys zu obfuscaten, zu signieren und und und...

Für die verschiedenen Typen (DLL, Anwendung...) bietet der Reactor auch eigene Konfigurationen an.

Zusätzlich sind noch tools wie

  • Stack Trace Obfuscator ("entschlüsseln" von Trace-Meldungen aus Fehlern)
  • Lizenzsystem (mit / ohne Aktivierungszeugs)
  • ShareIt Modulgenerator
  • NecroBit verschlüsselung (wenn ich mich recht erinnere wird die Assembly in ner Nativen Windows-EXE verschlüsselt, also kommt man mit nem Disassembler nicht mehr so schnell ran)

enthalten.

Alles in allem - kann ich von mir behaupten - ein super tool!

Mfg,
Daniel

12.12.2007 - 12:15 Uhr

Hi,

ich denke, der kopiert manche notwendigen Dateien einfach nicht ins ausgabeverzeichnis, weil diese bereits im GAC vorhanden sind.

Was ich als erstes mal machen würde (bzw. nachsehen würde), wenn du in deinem Projekt auf die "Verweise" gehst, und das Eigenschaftenfenster aufmachst, ob bei allen Verweisen die Eigenschaft "Lokale Kopie" auf True gesetzt ist.

Erst dann werden Sie nämlich auch ins Ausgabeverzeichnis kopiert.

Mfg,
Daniel

09.12.2007 - 10:10 Uhr

Hi,

es gibt ja das "DateChanged" Event.
Musst dir halt immer das letzte Datum speichern, und wenn das DateChanged auftritt, das gespeicherte & neue Datum vergleichen, ob der Monat gewechselt wurde.

Ein direktes Event für einen Monatswechsel gibts glaub ich nicht.

Mfg,
Daniel

02.12.2007 - 22:32 Uhr

Hi,

du könntest die Datensätze auch über SOAP von Amazon abrufen.

Siehe http://www.aspheute.com/artikel/20021029.htm

mfg,
daniel

02.12.2007 - 22:24 Uhr

Hi,

du könntest, bevor du die Bilder löschen willst (also vor dem Beenden) alle Image Controls durchlaufen und das Image wieder auf null setzen.

Also


ImageControl.Image = null ;

Somit müsste die Bindung an das element aufgehoben sein, und du müsstest es löschen kann.

Vg,
Daniel

28.11.2007 - 08:19 Uhr

Hi,

also das RichText Steuerelement kann RTF anzeigen (Rich Text format), aber keine Word-Dokumente. Wenn du dein Office-Dokument als RTF abspeicherst, dann kanns die RichTextBox mit der Funktion "LoadFile" laden.

MSDN-Library - LoadFile

für nen Word-Pad nachbau sollte die RichTextbox reichen, allerdings gehen halt keine DOC`s.

23.11.2007 - 22:08 Uhr

Hi,

das kannst du normalerweise direkt als SQL-Anweisung (DELETE) an der Server schicken.
Damit musst du dich im Programmcode dann nicht um das Löschen kümmern.

Der Befehl müsste so aussehen (ich gebe aber keine Garantie auf 100%ige Korrektheit, eventuell musst du die 2 Datums-Felder tauschen):


DELETE FROM deineTabelle WHERE DATEDIFF(year, deineDatumsSpalte, GETDATE()) > 1

Könnte auch < 1 sein, musst du mal testen.

Beschreibung der DateDIFF Funktion:
http://msdn2.microsoft.com/de-de/library/ms189794.aspx

vg,
Daniel

22.11.2007 - 09:18 Uhr

Hi,

also wenn du die Datei physikalisch weitergeben willst, dann hast du so eh ein Problem, da auf dem Zielrechner dann der SQL Server installiert sein muss, sonst geht die Datenbankdatei auch nicht (soviel ich weiß).

Da wäre dann ne Embedded DB (Firebird, Access, SQLite) die bessere wahl.

Wenns nur um das Schließen der Datei geht, musst du die Verbindung schließen, dann müsste auch die Datei freigegeben werden.

22.11.2007 - 09:07 Uhr

Hi,

die Datenbank wird sich deshalb nicht nochmal öffnen lassen, weil du Sie ja auf Dateibasis öffnest. (AttachDbFilename).

Du musst Sie, wie schon oben gesagt, über den Server öffnen, also so:


Data Source=SERVER;Inital Catalog=DATENBANK;Integrated Security=SSPI

Somit übernimmt der Server die Datenbankabfragen, und du kannst Sie öffnen soviel du willst. Da müsste dann auch ein wechsel zwischen Datenbanken kein Problem sein, allerdings kannst du dann deine Dateiauswahl nicht mehr benutzen.

Müsstest du dann so machen:

http://www.codeproject.com/cs/database/SubmitSQLInfoEnumerator.asp

20.11.2007 - 18:45 Uhr

Hi,

also die direktiven dafür lauten z.B:


#if DEBUG
#else
#endif

würde dann z.b. den Code nur im Release oder Debug mitkompilieren.

Die verwendeten Defines kannst du dann im Projekt einstellen.

Viele Grüße,
Daniel

19.11.2007 - 22:04 Uhr

Hi,

kannst du den ganzen Code einsehen, oder nur die Member, die die DLL bereitstellt?

An den kompletten Code kommst du nämlich ohne Disassembler nicht ran, es werden dir halt nur die Funktionen & Klassen angezeigt, die die DLL beinhaltet.

Aber die werden ja auch benötigt, sonst wüsstest du ja nicht, was du aufrufen willst, bzw. der Compiler würds nicht wissen.

Mfg,
Daniel

17.11.2007 - 15:11 Uhr
public partial class Form1 : Form
    {
        testobj test;
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
             test = new testobj();
             test.load_file("/path/test.ini");
        }

        private void button2_Click(object sender, EventArgs e)
        {
              if (test != null)
              {
                  test.name = "newtest.ini";
                  test.addlines("timeout = 30");
               }
               else
               {
                   MessageBox.Show("Objekt nicht erzeugt!");
               }
        }

        private void button3_Click(object sender, EventArgs e)
        {
              if (test != null)
              {
                  label1.Text = test.show(title);
               }
               else
               {
                   MessageBox.Show("Objekt nicht erzeugt!");
               }
        }
    }

So könntest du noch die Fehler umgehen, wenn das Objekt noch nicht erzeugt wurde.

15.11.2007 - 08:24 Uhr

Guten Morgen,

da gibts auch keinen Unterschied 😉
Objekt ist nur ein anderer name für eine konkrete Instanz.

Zwischen Klassen und Objekten gibt es einen unterschied, aber nicht zwischen einem Objekt und einer Instanz.

Wenn du von der Klasse z.B. eine "Instanz" erzeugst, ist das das Objekt.

Mfg,
Daniel

zitat Wikipedia:

Klassen sind Vorlagen, aus denen Instanzen genannte Objekte zur Laufzeit erzeugt werden.

13.11.2007 - 23:05 Uhr

Hi,

Google spuckt folgendes als 1. Ergebniss aus.
Sollte sein was du suchst:

http://www.codeproject.com/csharp/networkmonitorl.asp

mfg,
daniel

12.11.2007 - 00:03 Uhr

Hi,

wenn du Zugriffsdaten für den PC hast, könntest du evtl. auch die WMI (Windows Management Instrumentation) verwenden.

Auf http://www.codeproject.com/useritems/Remote_process_controller.asp

findest du ein beispiel zum Anzeigen & Starten von Prozessen auf einem Remote-PC.

Mfg,
Daniel

11.11.2007 - 15:34 Uhr

Hi,

du musst glaub ich dem Windows-Designer explizit sagen, dass es ein Control ist.
Dies glaub ich geht direkt über einen Rechtsklick auf die Toolbox, und dann mit "Steuerelemente auswählen".

Da kannst du dann deine DLL auswählen, und die Steuerelemente darin werden in die Toolbox eingebunden, und können dann mit dem Designer verwendet werden.

Ich glaube der "normale" Verweis ist dann nicht mehr notwendig.

mfg,
Daniel

06.11.2007 - 11:30 Uhr

Normalerweise müsste es reichen die eigenschaft "Localizable" wieder auf False zu setzen.

Kann aber nicht versprechen dass das 100%ig geht, aber ich dachte es geht so 😉

06.11.2007 - 11:12 Uhr

Hi,

ist die Anwendung eine MDI-Anwendung?
Also ein Hauptfenster und viele MDI-Children?

Dann kannst du dir das mit einer Liste gänzlich sparen, da du auf die einzelnen Formulare über die MDIChildren-Eigenschaft rankommst.

Würde dann in etwa so aussehen (angenommen, du suchst z.b. das Kundenformular frmKunde mit der ID "5"):


            foreach (Form m in MdiChildren)
            {
                if (m.GetType() == typeof(frmKunde))
                {
                     // Das Formular ist vom Typ "frmKunde"
                     if (m.Tag.ToString() == "5")
                        // Wir haben das Kundenformular von Kunde 5
                }
            }

Musst halt natürlich, wenn du z.b. ein neues Kundenformular öffnest, die Tag-Property des Forms setzen.

Mfg,
Daniel

05.11.2007 - 20:26 Uhr

Hi,

wenn die Drucker SNMP untersützen, könntest du mit SNMP rausfinden um welches gerät es sich handelt.

Google bzw. Codeprojekt bietet dafür schon einige Klassen.

http://www.google.de/search?q=snmp+c%23&sourceid=navclient-ff&ie=UTF-8&rlz=1B2GGGL_deDE205DE212

mfg,
daniel

05.11.2007 - 16:20 Uhr

Hi,

Form.FormBorderStyle = FixedDialog ;

Sollte das sein was du meinst 😉

05.11.2007 - 13:46 Uhr

.NET ist eine Art Antwort auf Java also ist das Ziel auch platformunabhängig zu programmieren. Sehe ich das richtig?
Ich will die Applikation in Win programmieren es aber in Linux und OSX ausführbar erstellen. Ist das möglich?

Wenn du Methoden und Klassen verwendest, die nicht speziell Windows-Funktionalitäten benötigen, kannst du das. (z.b. bei Konsolenanwendungen, Anwendungen mit OpenGL oder GTK).


System.Media.SoundPlayer myPlayer = new System.Media.SoundPlayer();
myPlayer.SoundLocation = @"c:\click.wav";
myPlayer.Play();

Dürfte nur unter windows gehen, weil der System.Media - Namspace meiner meinung nach Speziell die Windows-Medienverwaltung anspricht.

Laden einer WAv-Datei aus ner Assembly:
http://www.csharper.net/blog/getting_an_embedded_resource_file_out_of_an_assembly.aspx

mfg,
daniel

edit: System.Media gibts anscheinend doch unter Mono auch 😉

05.11.2007 - 13:04 Uhr

Hi,

du kannst im Projekt einfach den Projekttypen von "Windows-Anwendung" auf "Konsolenanwendung" ändern.

Dann wird im Hintergrund zuerst die konsole geöffnet, und die Console.WriteLine Befehle gehen auf diese Konsole.

Mfg,
Daniel

05.11.2007 - 00:09 Uhr

Hi,

der Befehl


byte[] image = (byte[])command.ExecuteScalar();

ExecuteScalar ist ja explizit dafür da, nur jeweils EINE rückgabe der Datenbank zu holen.

Du müsstest die ganzen Bilder also in ein DataSet oder so reinladen, und da jedes bild durchgehen.

04.11.2007 - 23:53 Uhr

Hi,

Wenn ich jedoch jetzt den Code ausführe aber nicht im Internet bin versucht er circa 15-20 Sekunden lang auf die URL zuzugreifen, dies ist jedoch viel zu lange, kann man die Zeit irgendwie einstellen?

Du könntest einfach vor der Anfrage prüfen, ob eine Internetverbindung besteht, z.B. mit der ping-klasse.

Wie kann ich wenn ich über WebClient (HTTP) etwas herunterlade den Download pausieren und fortsetzen?

Denke der Webclient kann das nicht. Müsstest du evtl. BITS benutzen.
http://www.codeproject.com/csharp/Managed_BITS.asp

mfg,
daniel

04.11.2007 - 23:41 Uhr

hi,

warum die beiden while-schleifen?

Machs doch einfach so:

            FileStream f = File.Create(destFilePath);
            f.Close();

            File.Replace(sourceFilePath, destFilePath, null);

mfg,
daniel