Laden...

Forenbeiträge von Quest Ingesamt 108 Beiträge

15.10.2008 - 12:06 Uhr

Habs hinbekommen, war die OnIdle...
Eigentlich sollte das ohne Probleme funktionieren - aber wohl mal wieder ein neues tolles Vista-Feature das irgendwas mit der Vorschau und OnIdle zu tun hat! 🙁

Jetzt checke ich in der OnIdle ob die MainForm minimized ist (und führe keinen Code aus) und schon funktioniert das Ganze!

15.10.2008 - 11:17 Uhr

Events der Hauptform hab ich schon durchsucht, da ist nichts dabei...

Dadurch dass es nur unter Vista auftritt denke ich aber sowieso dass ich die Events ausschließen kann - echt ein seltsames Problem!

14.10.2008 - 08:20 Uhr

Hallo zusammen,
ich habe folgendes Problem:
Wenn ich unter Vista meine Application minimiert in der Taskleiste habe ist es nicht möglich diese mit einem Klick wieder zu maximieren. Ich höre dabei immer ein kurzes "Pling" und die Application bleibt unten.
Wenn ich jedoch die "Vista-Vorschau" inklusive dem Text beim Mouseover abwarte funktioniert das Maximieren (jedoch auch immer erst beim 2ten Mal).

Der Fehler tritt immer dann auf wenn ich zuvor "per Hand" minimiert habe....

Ich hoffe ich konnte einigermaßen klar machen wo das Problem liegt. Wäre klasse wenn jemand von euch schonmal ein ähnliche Problem gehabt hat oder was schlaues dazu weiss!

Umgebung ist .NET 2.0, in der WinForms Anwendung ist ein DX9 Control eingebettet und unter XP funktionierts ohne Probleme...

Danke!

13.09.2006 - 17:41 Uhr

Um es kurz und schmerzlos zu machen:
Ich benutzte einen OpenFileDialog und würde gerne wissen ob das selektierte File auf einem Netzkaufwerk oder meiner lokalen Platte liegt - wie mach ich das am dümmsten? 🤔

danke schonmal!

14.07.2006 - 14:33 Uhr

Original von svenson
Bei Fliesskommazahlen musst du grundsätzlich und immer mit sowas rechnen.

muss ich? ich kann also nicht davon ausgehen dass ich 2.5 speichere und dann auch 2.5 rausbekomme? also dann jedesmal beim einlesen wieder casten? 8o 8o 8o

14.07.2006 - 14:31 Uhr

Original von MarsStein
Hallo,
versuch mal die 2.5 vor dem speichern explizit auf float zu casten, sonst steckst Du vermutlich 'nen Double in ein Float-Feld.

mach ich schon, hab ein explizites "Convert.ToSingle" bevor ich die zahl in das dataset stecke...

14.07.2006 - 14:12 Uhr

Hallo zusammen,

ich benutze die firebird-DB in der embedded-version und speichere derzeit in einigen datenbanktabellen float-werte (single in C#)...

speichere ich nun z.B. "2.5" ab und öffne die datenbank mit einem der gängigen tools (ib-expert, ems db manager, etc.) so steht dann im data-view immer sowas wie "2.4999999545434"...

wie kann sowas kommen? von irgendwelchen DB-einstellungen?
oder behandelt firebird die floats irgendwie anders?

danke schonmal...

07.07.2006 - 15:15 Uhr

sondern? wie willst du die beiden dann miteinander "bekannt" machen?

07.07.2006 - 13:49 Uhr

danke für die antworten 👍

an einen singleton hab ich auch schon gedacht...

werd mich mal dranmachen und mich bei weiteren problemen melden 😁

07.07.2006 - 13:25 Uhr

Hallo zusammen,

ich habe derzeit folgende Situation:
Meine Hauptform möchte ein Event von verschiendenen Sub-Sub-Sub-UserControls bekommen (ist immer das gleiche Event) ohne dass beide voneinander wissen. Also z.B. folgender Ablauf:

  1. checkBox1 wird geklickt in irgend einer verschachtelten UserControl -> Event an Hauptform schicken um drauf zu reagieren (also sender die checkBox1)
  2. checkBox2 wird geklickt -> Event an Hauptform und drauf zu reagieren (also sender die checkBox2)...
    etc...

Also kennt die HauptForm die checkBoxes nicht und umgekehrt...

Wie ist sowas am einfachsten möglich?

Bisher wusste meine Hauptform immer von wem das Event kam, durch die Verschachtelung weiss es die Hauptform nun allerdings nicht mehr...

Danke schonmal!!

20.06.2006 - 08:39 Uhr

hallo zusammen,

bisher benutze ich eine embedded firebird datenbank mit dem firebird .net provider...
funktionert bisher ganz gut und ich kann alles damit machen was ich will, das einzige was ich nciht komplett verstehe ist, warum alle spalten nach einem select immer vom typ object sind - kann man hier nicht irgendwie von dem datentyp der datenbank auf den .net datentyp automatisch casten?
also z.b. double precision von der firebird DB entspricht einem double in .net, etc...
oder gibt es da ne möglichkeit den typ automatisch zu bekommen?

oder ist es immer so dass ich händisch ein typed dataset anlegen muss das der struktur der DB entspricht (bzw. den tabellen die ich haben will)

hoffe das war jetzt nicht allzu mißverständlich...

16.06.2006 - 12:26 Uhr

es gibt sogar ein property dafür
*kopf an die wand schlag*
sorry herbivore, aber beim durchgucken hab ich das property nicht gesehen, peinlich peinlich...

vielen dank!

16.06.2006 - 11:39 Uhr

Ich habe hier einen ListView mit einem FullRowSelect...

Das Szenario sieht wie folgt aus:

  1. Ich selektiere mir eine komplette Zeile im ListView
  2. Ich klicke einen Button drunter (in diesem Augenblick verliert der Listview die Selection da auch der Focus verloren geht)...

Gibt es eine einfach Möglichkeit die Zeile markiert zu halten im Listview bis ich das nächste Mal neu selektiere?

Danke schonmal!

25.05.2006 - 10:48 Uhr

Hmm, danke für den Hinweis aber das hilft wohl nicht wirklich weiter denn ich habe ein paar mächtige Controls die das Flackern erzeugen...
Von "Janus" benutze ich den Kalender, die Timeline und das Datagrid - da hab ich keine Möglichkeiten irgendwas zu modifizieren, ich muss die Dinger irgendwie darstellen ohne dass alle flackert wenn die wieder in der Focus rücken...

Derzeit hab ich die in einer Usercontrol die bei Programmstart einer Tabpage hinzugefügt werden, jedesmal wenn diese Tabpage wieder Focus bekommt dann entsteht wieder dieser 1-2 sekündige elendig langsame Aufbau der Controls...

Ich kann dem User ruhig zumuten diese 1-2 Sekunden zu warten, allerdings hab ich keine Ahnung wie das bewerkstelligen soll - ich könnte ja evtl. auch von der tabControl weggehen wenn das was bringen könnte und die 3 Tabpages anderes darstellen (z.B. ne kleine Navileiste oben mit Buttons oder so...)...

Aber mein Hauptproblem ist erstmal das "wie"...

25.05.2006 - 10:28 Uhr

Ich habe derzeit eine Applikation die in drei große Tabs unterteilt ist...
Mittlerweile sind zwei der Tabpages so "überladen" mit Controls, dass bei einem Tabwechsel der Aufbau solch einer "überladenen" Tabpage 1-2 Sekunden dauert und alles dabei flimmert...
Wie krieg ich das jetzt am einfachsten hin hier z.B. 1-2 Sekunden in meiner Statusleiste die Progressbar laufen zu lassen und im Hintergrund die neue Tabpage aufzubauen um so diese geruckel nicht sichtbar zu machen?

Hätte nie gedacht dass die Performance so schlecht werden kann wenn man 2-3 aufwendige Controls platziert (Datagrid, Kalender...)

Danke schonmal!!!

17.05.2006 - 15:53 Uhr

Ja ok, das mit dem Dictionary geht in die Richtung die ich ale letztes angehen wollte...

Problem dabei ist dass neue Datensätze noch keine ID haben sondern diese erst später von der Datenbank bekommen, aber da der Name auch Unique ist kann ich diesen ja erstmal hernehmen, eigentlich unnötig kompliziert das Ganze, aber ich zieh das mit den AutoIDs von der DB jetzt mal durch weil ichs früher oder später brauche....

17.05.2006 - 15:33 Uhr

Aha ich kann an einzelne Listbox Einträge Tags anhängen? Wie sieht sowas aus?

17.05.2006 - 14:18 Uhr

In meiner Application hole ich mir ein DataSet mit zwei Tabellen, bearbeite diese lokal bevor es am Ende wieder zurückgeschrieben wird.

Der folgende Fall bereit mir jedoch etwas Kopfzerbrechen:

  1. Ich lösche eine DataRow (RowState Deleted)
  2. Alle übrigen DataRows werden in einer listBox dargestellt
  3. Der Index der Listbox stimmt also nicht mehr mit dem Index der DataTable überein

Was ist nur einfachste Weg von der listBox mit dem tatsächlichen Datensazu zu verknüpfen und gleichzeitig alle gelöschten DataRows nicht mehr anzuzeigen?
Jedes mal mit einer for-loop durchzurennen? Ein kleine Tabelle mit Verknüpfung von Datensatz und Index?
Alles nicht so schön...

AcceptChanges kann ich nicht machen da ich die Infos für den DataAdapter benötige zum zurückschreiben in die die DB...

Danke schonmal!

17.05.2006 - 09:07 Uhr

Hallo zusammen,
in VS 2003 war es problemlos möglich den Inhalt eines DataSets (also die Rows) im Debugger zu sehen, in VS 2005 hab ichs bisher noch nicht hinbekommen - habt ihr dazu eine Idee? Ich finde zwar die tables und columns aber den Inhalt der rows kann ich einfach nicht finden...

Edit: Kommando zurück, hab gerade den DataSet Visualizer gefunden! Sorry! 😁

08.05.2006 - 08:55 Uhr

Ich habe eine saubere Datenbankstruktur aufgebaut in einer Firebird Datenbank und lese diese mit dem neusten .NET Provider in meine Anwendung aus...

Jetzt wird es jedoch nötig 450 integer Messwerte zu den Testdatensätzen zu speichern. Meine Idee war es jetzt eine neue Tabelle anzulegen die nur diese Blobs enthält wo ich die 450 int Werte pro Blob reinlege.
Kommt meiner Meinung nach genau auf das gleiche raus wie die Messdaten auszulagern oder was meint ihr (zumal die Datenbank flexibel für die Zukunft sein soll - embedded oder server)?
Und so könnte ich schön verknüpfen in der DB (wird Testdatensatz gelöscht wird der Blob auch gelöscht da verknüpft...)

Jetzt zu meiner Frage: Wie genau krieg ich die Daten in den Blob und wieder raus? Oder ist der Ansatz grundsätzlich falsch?

Bisher arbeite ich mit Datasets die ich ein- und wieder auslese....

Ich danke euch schonmal für eure fachliche Hilfe!

03.05.2006 - 15:16 Uhr

tschuldigung, gewohnheit wird man so schnell nicht los 😁

03.05.2006 - 15:03 Uhr

hallo zusammen,

welches tool könnt ihr für eine embedded firebird datenbank empfehlen? darf auch ruhig was kosten...
ist ib-expert wirklich das beste tool das es derzeit gibt? v.a. ein db-designer mit grafischer aufbereitung wäre ganz nett (hat die vollversion von ib-expert wenn ich richtig gesehen habe)

hmm bin gerade über den ems sql manager auch noch gestolpert - der sieht auch nicht schlecht aus und die basic-version dürfte auch alles haben was ich brauche - meinungen dazu?

03.05.2006 - 11:34 Uhr

Ah ok alles klar, vielen Dank für die Hilfe!

03.05.2006 - 11:01 Uhr

Und wie sieht es mit verschiedenen Appdomains aus? Genauso?

03.05.2006 - 10:45 Uhr

Ah ok ich verstehe, also wenn wirklich Probleme mit Verwendung von 1.1 und 2.0 hätte, dann wären die wohl schon längst aufgetreten (auch wenn ich 1.1 und 2.0 hier installiert habe)...

Kurzum: Gehts auf dem Entwicklungsrechner mit Verwendung von 2.0 und dlls mit 1.1 erstellt dann gehts auf dem Zielrechner nur mit 2.0 auf alle Fälle...

03.05.2006 - 10:30 Uhr

Hmm und wie kann ich dann sicher sein dass das 2er, bzw wie genau muss ich mir diese Probleme vorstellen?

03.05.2006 - 10:22 Uhr

Hallo zusammen,

mal ne ganz generelle Frage: ich habe hier einige alte dlls, die mit dem Framework 1.1 erstellt wurden - meine Anwendung möchte ich jedoch mit 2.0 entwickeln, benutzt jedoch einige der alten dlls. Soweit so gut, allerdings stellt sich mir eine Frage:
Muss ich jetzt auf dem Rechner auf dem die Software installiert werden soll beide Frameworks installieren oder reicht in dem Fall das 2.0er?

26.04.2006 - 14:25 Uhr

Danke herbivore!

Werde mir beide casts mal reinziehen, klingt gut...

26.04.2006 - 13:53 Uhr

Stimmt, daran hab ich auch schon gedacht - jedoch habe ich dann zwei Properties für den selben Wert und das wollte ich eigentlich umgehen, hmmm...
Ich müsste dann wohl nen eigenen TypeConverter erstellen oder sowas ähnliches machen 🤔

26.04.2006 - 13:39 Uhr

Hallo zusammen,

ich würde gerne das folgende machen:

Ich habe ein Property (double) Length und n' Haufen anderes Zeug in dem Objekt. Diese sProperty muss ein double sein, jedoch will ich gleichzeitig im PropertyGrid dahinter " mm" für die Länge anzeigen...
Auch Userinput im Grid soll mit "5.45 mm" oder "5.45" möglich sein, jeweils speichern als double - das ganze müsste irgendwie über ein Attribut zu lösen sein, nur wie genau?
Hat jemand nen Tipp für mich und/oder gleich nen kleinen Code-Brocken?

Danke schonmal!

26.04.2006 - 10:17 Uhr

Danke, werde ich mir mal angucken!
Wobei ich das Gefühl habe, dass ich bei meinen DataTables bleibe, aber das Thema an sich ist nicht uninteressant....

26.04.2006 - 09:13 Uhr

Ah, tut mir Leid - dann habe ich falsch in Erinnerung was ein O/R-Mapper macht - welchen könntest du mir da empfehlen? Da gibt es einiges Open Source wenn ich mich recht erinnere...

26.04.2006 - 09:04 Uhr

Danke schonmal für die Tipps...
Im Prinzip habe ich also verschiedene Möglichkeiten:
Alles mühsam per Hand in einzelne Datenbankspalten speichern (übersichtlich in der Datenbank weil direkt zugreifbar) oder das ganze Objekt zu packen und in die Datenbank zu pressen (XML oder mit O/R-Mapper), hmmm

Ich würde momentan bevorzugen dass ich in der Data Access Schicht ein Dataset mit den Objektinfos befülle und das dann in die Datenbank schreibe - die 50 waren übertrieben im Beispiel, werden wohl ca. 5-6 Objekte mit je 10-15 Properties, die dann in der Datenbank-Struktur anders aussehen (5 Properties sind bei allen Objekten gleich und so in der DB gleichen Tabelle, dazu dann noch 5-6 Objektspezifische Tabellen mit je 5-10 Spalten -> in der DB-Struktur sehr übersichtlich und klar)

Wo ich dann aber einen anderen Ansatz brauch ist die Datenspeicherung in der Datenbank, 2D Messdaten mit 55x55 Datenpunkten -> 3025 Datenpunkte pro Messung die in die Datenbank müssen -> hier wollte ich über XML serialisieren und so in der DB speichern....

ich komm schon wieder von einem ins nächste, sorry... 😁

26.04.2006 - 08:30 Uhr

Hallo zusammen,
ich habe heute mal ein sehr grundsätzliche Frage: wie lese ich am besten die Werte eines Objekt aus das sehr viele Properties besitzt?

Also mal angenommen ich habe ein Object A, dieses besitzt 50 Properties mit get/set Methoden, diese werden durch ein PropertyGrid "befüllt" bzw haben default Werte...

Jetzt möchte ich in einem Rutsch alle Werte auslesen und diese in eine Datenbank zu schreiben - was ist der einfachste Weg?

Weil alle einzeln via: A.Prop1, A.Prop2, ... , A.Prop50 auszulesen ist Käse....

Meine Idee wäre jetzt alles in eine public Funktion des Objekts A mit out Parametern zu packen die dann die ganzen 50 out Parameter mit den Werten füllt -> ein Aufruf und ich habe alle Werte der 50 Properties in der aufrufenden Klasse...

Aber ist das gute Programmierung? Also ein sehr seltsames Problem das ich habe....

27.01.2006 - 09:33 Uhr

Ist es eigentlich grundsätzlich immer so dass der View public methods von dem Controller aufruft und der Controller den View über Events benachrichtigt?

Weil mal angenommen ich änder etwas am Controller, bzw. den public methods; dann muss ich auch am View (bzw. allen Views) aktiv werden...

Würde man den Ansatz umdrehen und den View Event werfen lassen und einfach jeden der "interessiert" ist, sich an diese Events hängen lassen, würde das Ganze doch besser entkoppelt werden. Allerdings benötigen die Views dann public methods für Updates selbiger.

Also irgendwo hakts noch im Vetsändnis bei mir... 🤔

26.01.2006 - 11:28 Uhr

@kakomilch: vielen dank für den code-schnipsel - das war genau das was mir gefehlt hat zum verstehen, jedoch hat sich mir beim durchlesen genau dieselbe frage gestellt die unreal formuliert hat...

da ich auch recht gerne daten in den event-paramtern mitgebe (siehe meine code g) wäre das doch ne möglichkeit das ganze zu vereinfachen?
allerdings habe ich auch schon gehört dass es dadurch u.U. schwerer lesbar werden könnte - gibts es ein dafür oder dagegen?

26.01.2006 - 10:14 Uhr

@norman_timo: das ist dann wirklich konsequent, nur stellt sich mir hierbei die frage ob ich dann nicht mehr aufwand reinstecke als wirklich nötig ist?
strikte trenunng schön und gut, aber irgendwann wird der overhead im vergleich zu dem, was man eigentlich erreichen möchte, einfach zu groß...

@Generalissimo: daran habe ich auch schon gedacht, kannst du mir dann an einem einfachen beispiel erläutern wie ich etwa den inhalt einer textbox nach einem button click vom view über den controller zum model bringe? oder direkt vom view zum model...
hmm bisher habe ich eine klare trennung dadurch dass der view ein event feuert und in diesem event relevante daten mitliefert - wie würde das dann mit nem controler dazwischen aussehen?

26.01.2006 - 09:23 Uhr

Hallo zusammen,

ich möchte in meiner Anwendung eine klare Trennung zwischen den verwendeten Forms und der Anwendungslogik - meine Frage ist jetzt wie ich am besten und übersichtlichsten die Klicks auf Buttons und die in zugehörigen Werte an die Anwendungsschicht weitergeben?

Bisher habe ich für jeden Button ein eigenes Event, so dass sich in der Anwendung "jeder dranhängen kann der möchte"; das sieht dann imho derzeit so aus:

public delegate void BtnConnectHandler(object source, BtnConnectEventArgs args);

public class BtnConnectEventArgs:EventArgs
{
	bool mConnect;
	int mDevice;

	public BtnConnectEventArgs(bool Connect, int Device)
	{
		mConnect = Connect;
		mDevice = Device;
	}

	public bool GetConnectionStatus()
	{
		return mConnect;
	}

	public int GetDeviceNumber()
	{
		return mDevice;
	}
}

Aber je mehr Forms es werden desto unübersichtlicher wird das Ganze, habt ihr evtl. Ideen und Anreungen für mich?

16.12.2005 - 15:46 Uhr

naja fürs die ersten tests ists vollkommen ausreichend, danach werd ich mir überlegen ne saubere klasse von EventArgs abzuleiten und 1-2 members zu spendieren für die zusatzinfos...

16.12.2005 - 15:34 Uhr

ja ok, das geht eigentlich noch viel schneller wenn ichs mir recht überlege, danke viemals...

16.12.2005 - 15:30 Uhr

ok doppelposting, haste recht - ich werds jetzt folgendermaßen machen:

die info beim erstellen der CtrlX-instanz mit ablegen, mir einen eigenen eventargs definieren und darin diese info ablegen und fertig - so sollte es dann klappen...

16.12.2005 - 15:28 Uhr

ah this.parent.parent als sender schicken und es klappt - die feine art ist das dann aber nicht oder? dann lieber den parent.parent in args verpacken?

16.12.2005 - 15:27 Uhr

damit krieg ich aber in diesem fall nur die groupbox heraus in der ich CtrlX platziert habe und nicht Ctrl1 bzw. Ctrl2 - argh ich verzweifel hier noch...

16.12.2005 - 14:15 Uhr

hmm, aber anhand des sender objects sehe ich dann doch noch lange nicht ob CtrlX nun durch Ctrl1 oder Ctrl2 erzeugt wurde - oder habe ich da jetzt was falsch verstanden?

16.12.2005 - 10:05 Uhr

Folgenden recht einfachen Aufbau habe ich derzeit in meiner Anwendung:

Der Einstiegspunkt ist die "MainForm", diese erstellt zwei UserControls Ctrl1 und Ctrl2 und diese wiederum zwei zugehörige Klassen Cl1 und Cl2 die die Berechnungen "unter" den jeweiligen UserControls durchführen - soweit so gut...

Jetzt möchte ich zu Ctrl1 und Ctrl2 noch eine UserControl CtrlX hinzufügen, diese wird jeweils instanziiert, es existieren somit zwei Instanzen von CtrlX (eine auf Ctrl1 und eine auf Ctrl2) - nun zu meiner Frage, wie lasse ich diese am geschicktesten mit Cl1 und Cl2 kommunizieren? Falls ich in CtrlX Events definiere die geworfen werden, wie kann ich dann sicherstellen dass dieses entweder für Cl1 oder für Cl2 gedacht ist?
Also kurzum: Wie kann ich das Event identifizieren? Also CtrlX so allgemein zu identifizieren dass es egal ist wo es "draufgeklatscht" wird...

Hoffe das war einigermaßen verständlich... 🙁

08.12.2005 - 12:50 Uhr

@kakaomilch: Danke für den Denkanstoss, die Idee mit dem Event hatte ich auch schon, nur bei mir hats dann an der richtigen Verwendung von Invoke gefehlt - ich dachte ich muss da irgendwelche Verbindungen zur Klasse herstellen...
Aber so ists ja eigentlich auch viel logischer 😁

@svenson: Danke für den Hinweis, da habe ich auch schon drüber nachgedacht - das wäre dann der nächste Schritt gewesen - aber zunächst sollte das Ganze mal laufen, bevor ich mir darüber den Kopf zerbreche...

Das Konzept der Threads wird langsam klarer, danke euch vielmals...

08.12.2005 - 11:53 Uhr

zunächst vorab: mein wissen was threading betrifft ist sehr bescheiden, aber ich bin ja schließlich lernfähig... 😁

mein problem ist das folgende:
ich habe eine normale winforms-app, im gleichen projekt befindet sich eine klasse mit der ich einen hardware-treiber von einem messgerät anspreche
dieser liefert die messwerte in einem eigenen thread (per eventhandler fange ich die werte in der klasse alle paar ms ab)
ergo ist es doch dann nötig dass ich meine hauptform mit invoke update, oder? nur wie kann ich von der instanzierten klasse aus auf die hauptform zugreifen?

ich hoffe das war jetzt nicht zu undurchsichtig, aber es ist schwer zu erklären wenn man selbst realtiv wenig davon versteht X(

02.12.2005 - 12:59 Uhr

hmm, ich habe mich dabei auf diese aussage verlassen - so wie ers schreibt macht das gewissermaßen sinn...

firebird embedded ist nunmal drauf ausgelegt ein "lokaler server" zu sein, um das switchen auf einen echten DB-server so leicht wie möglich zu gestalten - bei der vista DB sind server und embedded engine wohl nicht in so hohem maße verknüpft...

aber mittlerweile bin ich echt soweit in den nächsten wochen alles mal zu testen (sowohl firebird als auch vista, sowohl auf netzlaufwerk legen und auch einen zugriff von zwei nutzern gleichtzeitig) - allein schon um zu sehen was dann passiert 😉

und bevor jetzt wieder alle schreien dass es nicht für multi-user betrieb gedacht ist: ja ich weiss, allerdings wäre es doch mal nett zu sehen was dann passiert (falls es überhaupt möglich ist) 😭

01.12.2005 - 17:18 Uhr

wobei es bei meiner anwendung so ist dass eigentlich nie gleichzeitig in einen datensatz geschrieben bzw. die multi-user-umgebung, wie oben schon geschrieben, nicht wirklich eine multi-user umgebung in dem sinne ist - mehr oder weniger eher ein "lesendes sharen" der inhalte und ab und an mal was reinschreiben - ok ok ich bewege mich damit in einer grauzone und würde lieber gleich nen server benutzen, darf ich aber nicht...

wie dem auch sei, ich nehme mal den folgenden link als referenz - da wird auch so schön wischi-waschi formuliert und das eigentlich problem umgangen, aber für meine andwendung genügt das völlig und besser als das instabile access ist es allemal und(!) der user kann die datei auf ein netzlaufwerk legen ohne viel aufwand im gegensatz zu firebird...

hach ja, dieser thread wird immer krasser 8o

aber eins muss ich mittlerweile wirklich sagen: ich hasse es das file auf ein netzlaufwerk zu legen 🙁

01.12.2005 - 13:15 Uhr

mal angenommen ich hab 3-4 user die ab und an auf die daten zugreifen - passiert der seltene fall einer gleichzeitigen bearbeitung des gleichen datensatzes dann reicht das optimistic locking völlig...

es geht also darum die eigenen reingeschriebenen daten den anderen mit möglichst geringem aufwand lesend zur verfügung zu stellen - da ganze ist optional anzusehen!! sprich die meisten user werden ihre DB lokal auf ihrem PC haben und sich nie drum kümmern aber es wird auch einige user geben die gerne ihre DB sharen möchten, deswegen netzlaufwerk...
server mit DBMS braucht also ein großteil der user gar nicht und die fürs dies in frage kommen würde, kommen mit einem einfachen optimistic locking gut zurecht - jetzt brauch ich eine DB die das unterstützt und nicht so "anfällig" wie access ist - der ansatz von VistaDB ist genau das was ich brauche - der SQL Server Express ist noch nicht "klein" und "unaufwändig" genug...