Laden...
Avatar #avatar-2140.png
tom-essen myCSharp.de - Experte
Entwickler & Consultant NRW Dabei seit 15.05.2005 1.820 Beiträge
Benutzerbeschreibung
Interessen: CAPI, TAPI, TWAIN, Win32, Client/Server, Komponenten-Entwicklung, SharePoint, Azure, Cloud-Dienste. Hardware: Ständig wechselnd 😉

Forenbeiträge von tom-essen Ingesamt 1.820 Beiträge

19.04.2011 - 15:44 Uhr

Hallo!

Habe gerade eine neue Version hochgeladen. Geändert wurde folgendes:*Bei CSV-Dateien mit in Hochkommata eingeschlossenen Spaltenbeschreibungen wurde bisher die letzte Spalte "unterschlagen". Dies wurde behoben. *Im Ergebnis kann man mit Linksklick auf die Spaltenheader Spalten entfernen (die aktuelle, alle leeren, ...) *Startet man eine Abfrage und dockt den Reiter ab bevor das Ergebnis da war, kam eine Exception. Dies wurde behoben.

19.04.2011 - 13:31 Uhr

Hallo!

Entweder die von DaMoe80 beschriebene Variante für docx-Dateien, oder der Umweg über ein Excel-Dokument, welches dann als Datenquelle für ein entsprechendes Word-Dokument mit Platzhaltern dient.

18.04.2011 - 13:33 Uhr

Hallo Jo0oker,

geht z.Zt. nicht. Ich war davon ausgegangen, dass man das Passwort immer direkt in der ODC-Verbindung angibt. Werde dies bei Gelegenheit ändern.

18.04.2011 - 08:50 Uhr

Hallo!

Auf CodeProject gibt es ein Projekt dazu: Drag and Drop on a Tray Icon - CodeProject.

Dort wird das komplette Vorgehen erklärt, den Quellcode gibt's quasi als Zugabe.
Aber bedenke, dass WinApi ein komplexes Thema ist, und hier kommt noch prozessübergreifender Datentransfer dazu.

12.04.2011 - 10:11 Uhr

Hallo!

Evtl. mit Triggern, wenn man Zugriff auf die angezeigte Größe hat und diese mit der Button-Größe vergleichen kann. Alternativ einen eigenen Trigger oder Comparer schreiben, obwohl dass dan streng genommen nicht mehr XAML-only ist.

12.04.2011 - 10:08 Uhr

Hallo!

Ich beschäftige mich z.Zt. damit, Drag'n'Drop für die TrayIcons hinzubekommen.
Dabei habe ich - wie herbivore - feststellen müssen, dass man an die Elemente in der Taskleiste nicht direkt rankommt: Die TrayIcons sind in einer Art ToolStrip, die Fenster-Buttons in einer anderen Komponente.

Um an die Informationen dieser Elemente ran zu kommen, muss man zudem prozess-übergreifend Daten austauschen (deshalb evtl. auch deine Abstürze, hatte ich auch zu anfang), und dass ist ziemlich aufwendig.

Wenn man an das entsprechende Control rangekommen ist, kann man sich an die Ereignisse ranhängen. Problem ist dann allerdings, dass man herausfinden muss, wo der Button für das eigene Programm ist. Man muss also alle Buttons durchlaufen, feststellen, von welchem Prozess diese erstellt wurden, und dann die Position des Buttons abfragen.

Bei einem Maus-Klick innnerhalb des Controls prüft man dann die Korrdinaten mit der Button-Position, und wenn's passt, kann man drauf reagieren.

10.04.2011 - 14:52 Uhr

Hallo!

Zu Punkt 1.: SharpSVN ist OpenSource, kann man also anpassen. Allerdings muss man dann bei Updates von SharpSVN wieder alles anpassen. Zudem muss man sich mit dem gesamten Projekt vertraut machen, um zu wissen, was man löscht. Aufwand und Effekt dürften hier ungleich verteilt sein. Warum ist die Größe der Datei zu wichtig.

Zu Punkt 2.: Schau dir doch mal die Events der Klassen an, evtl. findest du da schon was.

Allgemein: Verschiedene Fragen bitte demnächst in separaten Threads stellen.

10.04.2011 - 14:25 Uhr

Hallo!

In den SysInternals-Tools gibt es ein Programm, um Anwendungen auf anderen Computern im Netz zu starten. Dazu wird meines Wissens nach die Admin$-Freigabe verwendet.

Wenn man das selbst implementieren will:*Freigaben auslesen *Programm mit allen benötigten DLLs kopieren *Programm wia WMI starten

Etwas problematischer wird es, wenn man ein Konsolenprogramm hat, und die Ausgabe direkt im aufrufenden Programm anzeigen lassen will, das geht dann wahrscheinlich nur über ein weiteres Remote-Programm, welches das erste startet, und die Ausgaben z.B. per TCP/IP weiterleitet.

06.04.2011 - 09:17 Uhr

Hallo!

Evtl. noch ein Bug: Wenn man nach oben oder rechts mit der Maus raus geht, wird das/der ToolTip geschlossen, wenn man nach links rausgeht, dann nicht. Wenn man nach unten rausgeht, und die Scrollbar aktiv ist, weil die Anzeige nicht ins Fenster passt, bleibt's ToolTip ebenfalls sichtbar.

06.04.2011 - 09:05 Uhr

Hallo!

Hab' nun die Controls auch mal ausprobiert. Unter Windows 7 flackern bei mir auch die ToolTips, da OnMouseMove durchgehend aufgerufen wird (auch, wenn die Maus nicht bewegt wird). Wenn man Die Maus schnell rausbewegt, bleibt das (der?) Tooltip oft stehen (und flackert dann logischerweise nicht mehr).

EDIT: Wenn man im ToolTip OwnerDraw auf true setzt, dann flackert es nicht mehr (zumindest unter Win7, andere habe ich noch nicht getestet). Muss man dann natürlich bei beiden Controls machen.

06.04.2011 - 08:32 Uhr

Hallo!

Stimmt, muss ja in ASCII umgerechnet werden.

Hast du hier langeweile gehabt 😉 ?

            if (columnIndex == 25)
            {
                columnIndex = columnIndex;
            }

So ist es noch etwas kleiner:


        private string GetColumnName(int columnIndex)
        {
            var result = String.Empty;
            while (columnIndex > 0)
            {
                var next = columnIndex % 26;
                result = Convert.ToChar((next == 0 ? 26 : next) + 64) + result;
                columnIndex /= 27;
            }
            return result;
        }

04.04.2011 - 13:00 Uhr

Hallo!

Hab' ich mir mal für die Umrechnung geschrieben:

        private static string GetColumnName(int columnIndex)
        {
            var result = String.Empty;
            while (columnIndex > 0)
            {
                var next = columnIndex % 26;
                result += Convert.ToChar(next);
                columnIndex /= 26;
            }
            return result;
        }

04.04.2011 - 12:58 Uhr

Hallo!

Bzgl. automatischer Updates evtl. noch einige zusätzliche Anmerkungen:

Erstmal wollen viele User einfach nur wissen, ob was geändert wird. Im schlimmsten Fall geht die Anwendung nach einem stillen Update nicht mehr, und der User weis nicht wraum.
Zudem war in einer der letzten c't-Editorale eine nette Geschichte von einem Redakteur, welcher eben nur schnell eine e-Mail lesen, anschließend etwas im Internet nachschlagen und daraufhin ein Dokument anpassen wollte.
Wenn nun in allen drei Fällen die Software zunächst ein Update einspielen will bzw. es einfach tut (wie dies z.B. TB und FF so machen), kann das ziemlich nervig werden.
Das ist zwar ein extremes Beispiel, aber man sollte bei Updates immer die Möglichkeit bieten, diese zu einem späteren Zeitpunkt installieren zu können.

Und um herbivores Beitrag aufzugreifen: Ideal wäre die Anzeige (wie z.B. bei MS/Windows), ob das Update sicherheitsrelevant ist und/oder was an der Funktionalität/UI angepasst wurde.

04.04.2011 - 12:50 Uhr

Hallo!

SharePoint wurde ja oben schon genannt, hier noch eine Alternative zu externen Hostern:
Für kleine/private Teams kann man evtl. auch zu Hause eine VM mit einer Server-version installieren, und darauf die SharePoint-Services installieren. Über DynDns wäre der externe Zugriff möglich.

04.04.2011 - 09:55 Uhr

Hallo!

Und dann gibt's noch das "Problem" mit den exceptions.
Du fängst einfach alle ab, und erstellst dafür eine neue. In der aufrufenden Methode besteht dann keine Möglichkeit mehr, den aufgetretenen Fehler zu spezifizieren. Zumindest sollte die ursprüngliche Exception mit übergeben werden (InnerException).

EDIT: Nach interner Diskussion mit herbivore angepasst

01.04.2011 - 12:59 Uhr

Hallo!

Auch ich bin voll drauf reingefallen. Ich wusste zwar, dass heute der 1. April ist, aber das hab' ich überhaupt nicht miteinander in Verbindung gebracht.

30.03.2011 - 15:35 Uhr

Hallo!

Sind Erweiterungen nur am Server möglich?

Folgende Überlegung:
Der Server lädt eine Datei auf den FTP-Server, wo seine IP und Port drin steht.
Wenn ein Client diese Datei findet, liesst er Sie aus. Ändert sich nun am Client etwas, meldet er sich mit diesen Daten per TCP/IP beim Server und sendet die Daten.

EDIT: Da wollte herbivore wahrscheinlich ebenfalls drauf hinaus.

30.03.2011 - 12:45 Uhr

Hallo!

Wollte nur mal mitteilen, dass die bisherigen Meldungen alle gesammelt werden, ich aber z.Zt. nicht dazu komme, diese zu bearbeiten. Zum einen bin ich zeitlich im Moment etwas eingeschränkt, zum anderen nutze ich die freie zeit gerade, um die Basis, also die Datenquellen-Adapter zu erweitern. Dadurch soll es dann auch möglich werden, Ergebnisse oder Abfragen direkt in andere Datenquellen zu schreiben / exportieren (z.B. mehrere CSV-Dateien schnell mal in eine SQL-DB schieben, dort mit SQL-befehlen entsprechend verknüpfen und das Ergebnis wieder in CSV exportieren).

30.03.2011 - 08:43 Uhr

Hallo!

Die Frage ist ja auch, wo deine/eure Schwerpunkte beim DB-Zugriff liegen.
Kommt es mehr auf Performance an oder eher auf die einheitliche Einbindung verschiedener DB-Systeme, sollen die Daten möglichst unkompliziert in Objekte umgewandelt werden (und umgekehrt), ...

Denn je nach Schwerpunkt fällt die Einbindung komplett unterschiedlich aus.

30.03.2011 - 08:40 Uhr

Hallo!

Als erstes würde ich mir man in SQL Management Studio über den Monitor anschauen, wer zu dieser Zeit angemeldet ist und welche Anfragen zu dieser Zeit laufen.
Auch mal überprüpfen, ob für die fragliche Zeit ein Job im SQL-Server geplant ist, oder Backup läuft. Auch ein Blick in die Geplanten Aufgaben des Servers kann nicht schaden, evtl. wird da etwas ausgeführt, was den Server ausbremst.

30.03.2011 - 08:36 Uhr

Hallo!

Wie wird die Datei den als Attachment angehängt? Wenn du die Datei selbst ausliest, reicht es evtl. aus, die Datei explizit mit Nur-Lese-Rechten zu öffnen.

29.03.2011 - 13:07 Uhr

Hallo!

Im Foruzm gibt es zumindest für WinForms schon ein paar Themen dazu. Das Prinzip sollte sich aber denke ich mal rel. einfach übertragen lassen.
Das wird zwar ein bisschen Arbeit, sollte aber deine Kenntnisse in WPF enorm steigern.

29.03.2011 - 12:07 Uhr

Hallo!

Den GC manuell zu starten, ist zwar möglich, sollte aber nur in Ausnahmefällen geschehen. Der GC ist so ausgelegt, dass er in der Regel schon den richtigen Moment zum Aufräumen findet.

29.03.2011 - 08:28 Uhr

Hallo!

Ich denke mal, da wirst du um die Erstellung eines Features nicht herum kommen.
Da bettest du das InfoPath-Formular ein. Anschließend über den InfoPath-Editor einen Button zum Speichern einbauen und über diesen einen EventHandler aufrufen.

Das schwierige dabei ist zum einen die Einbindung des Formulars in das Feature und das füllen des Formulars sowie das Abrufen der Daten. Ich habe irgendwo noch ein Projekt von einem Kollegen, da kann ich mal reinschauen, wie das gemacht wurde.

25.03.2011 - 07:47 Uhr

Hallo!

Wenn man die Kommunikation komplett auf XML umstellt, fällt zwar ein wenig mehr Overhead an, aber man hat auf der anderen Seite viel mehr Möglichkeiten (z.B. Versand binärer Daten in einem CDATA-Block). So kann man dann auch weitere Daten wie Dateiname, Beschreibung, ... mit übergeben (ja nachdem, was man gerade benötigt).

EDIT: Meine ChatDemo arbeitet so.

24.03.2011 - 16:38 Uhr

Hallo!

Klar, kein Problem, wollte ja nur drauf aufmerksam machen.
Und das man über "Aktive Themen" auch dran kommt, habe ich garnicht dran gedacht.

Besten Dank.

24.03.2011 - 12:31 Uhr

Hallo!

Sowoahl auf CodePlex als auch CodeProject gibt es zahlreiche Tiff-Libraries und -Demos. Evtl. arbeitet eine davon schneller als deine Komponente.

24.03.2011 - 10:41 Uhr

Hallo!

Ober man leitet Klassen, welche Default-Attribute nutzen, von einer Basisklasse ab, welche im Konstruktor per Reflection alle Default-Attribute ausliest und die Werte entsprechend setzt.
Allerdings sollte man sich im Klaren sein, das dies Zeit kostet, Reflection ist nicht gerade performant.

EDIT: Bei UI-Objekten ist das natürlich ein zu vernachlässigendes Problem, da setze ich mittlerweile immer mehr auf Reflection.

24.03.2011 - 10:29 Uhr

Hallo!

Habe gerade festgestellt, dass die Suche "neue Beiträge" nicht korrekt funktioniert.
Zuletzt war ich gestern vormittag onlineund seitdem ist ja einiges neu erstellt worden.
Mir werden aber nur die Beiträge angezeigt, die seit ca. 10:20 bearbeitet wurden (seitdem bin ich wieder im Forum).

22.03.2011 - 12:58 Uhr

Hallo!

Für Subversion gibts SharpSvn, für Notepad++-Funktionalität (nicht Notepad direkt) gibt's Scientilla.

Und beides ist nicht mal ebenso in ein eigenes programm einzubinden, da gehört eine Menge Aufwand dazu.

22.03.2011 - 08:46 Uhr

Hallo!

@xxxprod:
Wow, das muss ich gleich mal ausprobieren.

22.03.2011 - 08:25 Uhr

Hallo!

Bei der Datenmenge sollte man evtl. eher mal über das OpenDocument-SDK (von Microsoft) versuchen, die Daten zu exportieren, weil COM doch recht langsam ist.

21.03.2011 - 16:11 Uhr

Hallo!

@JAck30lena:
Ich meinte eigentlich eher, ob er auch anzeigt, wenn in mehr als zwei verschiedenen Dateien dieselben Code-Ausschnitte sind, also z.B.


Datei1 (13)
Datei2 (27)
Datei3 (16)
  Doppelter Code

Das Programm zeigt nämlich immer nur Ergebnisse mit 2 Dateien an, aber dann z.B.

Z:\Repository\libs\TD.Additional.Data\trunk\current\src\TD.Additional.Data\SqlFunctions.cs(0)
Z:\Repository\libs\TD.Additional.Data\trunk\current\src\TD.Additional.Data\ISupportInformations.cs(0)
ÿusing System;
using System.Collections.Generic;
using System.Text;
namespace TD.Additional.Data

Z:\Repository\libs\TD.Additional.Data\trunk\current\src\TD.Additional.Data\SqlFunctions.cs(0)
Z:\Repository\libs\TD.Additional.Data\trunk\current\src\TD.Additional.Data\JoinType.cs(0)
ÿusing System;
using System.Collections.Generic;
using System.Text;
namespace TD.Additional.Data

Z:\Repository\libs\TD.Additional.Data\trunk\current\src\TD.Additional.Data\SqlFunctions.cs(0)
Z:\Repository\libs\TD.Additional.Data\trunk\current\src\TD.Additional.Data\SqlField.cs(0)
ÿusing System;
using System.Collections.Generic;
using System.Text;
namespace TD.Additional.Data

21.03.2011 - 13:47 Uhr

Hallo!

duplo ist bisher das einzige, was ich auf Anhieb zum Laufen bekommen habe (bei ConQat bin ich an meinen bescheidenen Eclipse/Java-Fähigkeiten gescheitert).

Dank XML-Output kann man sich recht einfach eine kleine Oberfläche dafür schreiben. Wenn man das dann noch in Windows ins Ordner-Kontext-Menü packt, hat man rel. schnell eine rudimentäre Übersicht.

EDIT: Interessant wäre, ob das Tool auch mehr als zwei Dateien auf gleiche Code-Blöcke prüft.

21.03.2011 - 11:53 Uhr

Hallo!

Ich wusste bisher noch garnicht, dass es dafür sogar Tools gibt.

Bzgl. Code Detective:

außerdem hat es meine 2008er installation geschrottet

Das ist übel. In der letzten Recent review ist dazu sogar eine Warnung, aber wer achtet schon darauf.

Allerdings:

Clone Detective uses ConQAT to perform the clone detection.

Bei 250 MB Download kann man ja schon ein wenig gespannt sein.
Hoffentlich findest das Tool bei mir nicht allzu viel 😉

21.03.2011 - 10:36 Uhr

Hallo!

Hier noch eine schnellere, wenn auch etwas umständlichere Lösung:


var dataTable = dataGridView.DataSource;
dataGridView.DataSource = null;
dataGridView.RowTemplate.Height = rowHeight;
dataGridView.DataSource = dataTable;

Zusätzliche muss man evtl. noch die Spaltenbreiten und die aktuell markierte(n) Zelle(n) speichern und hinterher wieder herstellen.
Aber selbst damit lohnt sich diese methode ab ca. 1.000 Zeilen.

20.03.2011 - 11:07 Uhr

Hallo!

Ich arbeite gerade an so etwas ähnlichem für Bilder, also dass man ein Bild einlädt, und darauf dann mit der Maus einen GraphicsPath zeichnen kann. Anschließend soll man dann die einzelnen Punkte auch bearbeiten können. Hab' das aber zur Zeit leider nur im Büro, ich schaue nächste Woche mal nach.

18.03.2011 - 18:33 Uhr

Hallo!

Notizen nur privat (irgendwo verstreut), Application Framework z.Zt. ebenfalls nur bei mir, bzw. in Projekten hier im Forum verteilt.

18.03.2011 - 12:14 Uhr

Hallo!

Ich mache mir zwischenzeitlich immer mal wieder ein paar Gedanken und schreibe diese nieder. Zudem habe ich mit meinem Application Framework mittlerweile eine halbwegs brauchbare Basis für ein solches System.

Allerdings fehlt mir noch eine Architektur und ein solides Konzept. Zudem hat damals nur einer gemeldet, welcher aber auch nur begrenzt Zeit hatte.

Interesse besteht nach wie vor, allerdings keinesfalls alleine.

14.03.2011 - 13:46 Uhr

Hallo!

Stichwort "Late Binding" und "COM" SuFu benutzen

11.03.2011 - 12:32 Uhr

Hallo!

der User dr4g0n76 hat dazu eine komplette Komponente hier im Forum veröffentlicht (LowLevelGraphicsLibrary).

11.03.2011 - 08:46 Uhr

Hallo!

Das wird sehr schwierig werden.
Erster Ansatzpunkt ist der darstellende Font. Dann ein Graphics-Objekt erstellen, und die Ausmaße der Inhalte einer Spalte nacheinander abfragen (irgendeine Measure-Methode im Graphics-Objekt), den größten Wert nehmen, und in das Koordinatensystem für die Worddatei umrechnen.
Aber selbst dann wirst du nur Näherungswerte haben, alleine schon durch die ganzen Umrechnungen.

10.03.2011 - 13:02 Uhr

Hallo!

Unabhängig des Tipps mit dem CsvReader (welcher definitiv schneller ist als StreamReader.ReadLine):
Durch das einlesen per ReadLine wird für jede zeile ein zusätzliches String-Objekt angelegt. Und das Splitten geht nur solange gut, bis in einer Zeichenkette dieses zeichen ebenfalls verwendet wird.
Besser ist es, einen eigenen Buffer zum Einlesen der Binärdaten zu verwenden, und diesen direkt zu durchlaufen und die zeichen einzeln in einen StringBuilder zu kopieren. Sobald eine Zeile/ein Feld komplett ist, kann man die Daten direkt in die DataTable verfrachten.
Ich kann mir gut vorstellen, das der CsvReader das ähnlich macht.

10.03.2011 - 09:49 Uhr

Hallo!

Man könnte versuchen, periodisch über das Window-Handle des/r Word-Prozesse(s) alle untergeordneten Fenster und deren Titel anzufragen. Da im Titel der Name des Dokuments steht, kann man so feststellen, ob das Dokument noch geöffnet ist.

Allerdings weis ich nicht, ob die Struktur mit den Unterfenstern auch noch in den neuen Office-Versionen so vorhanden ist.

09.03.2011 - 18:00 Uhr

Hallo!

@zerberos:
Kann ich zwar spontan nicht reproduzieren, aber dank der Fehlermeldung habe ich zumindest einen Ansatz. Wird geprüft...

EDIT: Fehler gefunden. Der Fehler tritt auf, wenn noch kein Ergebnis da ist. Wird behoben

07.03.2011 - 15:35 Uhr

Hallo!

Evtl. kann man das über Events steuern. Das DataGridView-Control müsste ein Event für das Markieren von Zellen haben. Wenn eine "falsche" Zeile markiert wurde, musst du diese Markierung entfernen und an der richtigen Stelle wieder einfügen.

07.03.2011 - 10:25 Uhr

Hallo!

@maYer:
Die Zeile ist bewusst so klein gehalten. Das DataGridView-Control legt immer eine zusätzliche zeile an, um dort neue Datensätze eintragen zu können. Da es mir bisher nicht gelungen ist, diese zeile komplett auszublenden, habe ich Sie auf die kleinste Größe reduziert.

07.03.2011 - 10:23 Uhr

Hallo!

Läuft der Dienst unter einem normalen Benutzeraccount? Dann wäre das entsprechende AppData-verzeichnis die erste Wahl. Wenn es allerdings ein System-Account ist, fällt mir spontan keine MS-Empfehlung ein.

06.03.2011 - 10:39 Uhr

Hallo!

@mabo:
Da ist bereits jetzt schon möglich:
Kopiere die Einstellungsdatei ins Anwendungsverzeichnis und füge anschließend in der Datei das Attribut UseLocalConfigFile="true" zum Root-Element hinzu.

<configuration name="Database-Explorer" UseLocalConfigFile="true">

Somit werden dann auch Änderungen nur noch lokal geschrieben.

@all:
Es gibt wieder eine neue Version.
Geändert wurde u.a. der CSV-Import, dieser ist nun sehr viel schneller (bei mir 50MB in unter 8sek. eingelesen). Zudem kann man in den Einstellungen einer CSV-Datei nun auch selbst Spaltennamen angeben, für CSV-Daten mit fixen Spaltenbreiten kann man die Positionen der Spalten angeben (dabei auf die Reihenfolge achten).
Lässt man in den Settings den Wert für das Trennzeichen leer oder auf "Auto", versucht das Programm nun selbständig, das Trennzeichen zu ermitteln und prüft, ob die erste Zeile Spaltennamen enthält. Die Erkennung fixer Spaltenbreiten wird nicht unterstützt, dass kann nicht funktionieren (z.B. die BLZ-Liste der Bundesbank kann man nicht mit Logik entschlüsseln) (EDIT: Bin da mittlerweile doch etwas weiter, einfach probieren, ob es mit einer Datei funktioniert).

In der Toolbar des Ergebnispanel ist der Schalter für die Auswahl der Datenquelle nun ein Splitbutton: Per Dropdown-Menü hat man nun direkten Zugriff auf die Einstellungen der Datenquelle (besonders hilfreich, wenn man eine Datei per Drag'n'Drop nur zum Anzeigen geöffnet hat), ggf. muss man danach manuell die Abfrage erneut ausführen.

Habe zudem einige Fehler beim MSSQL-Adapter beseitigt (gab' teilweise Probleme mit den Schema-Angaben und bei Tabellenname mit Leerzeichen).

Für ODBC-Datenquellen können nun auch die Tabellenspalten angezeigt werden.

EDIT: Beim Start des Programms werden offen Abfragen der letzten Sitzung (falls diese gespeichert wurden) nun zwar angezeigt, aber nicht ausgeführt. Zum einen gab es dabei teilweise Anzeigefehler, zum anderen musste ich aber selbst erfahren, dass eine vergessene INSERT- oder UPDATE-Abfrage beim nächsten Start viel durcheinanderbringen kann.

28.02.2011 - 14:05 Uhr

Hallo!

@dimuwe:
Interessant wäre der Code von XMLEdit.Load und XMLEdit.Save, evtl. findet man dort den Übeltäter.