Laden...

Forenbeiträge von bonnet Ingesamt 107 Beiträge

19.05.2011 - 12:07 Uhr

Hallo Zusammen,

ich habe ein WCF-Dienst mit einer basicHttpBinding. Dieser soll in einem NT-Service unter Windows Server 2003 gehostet werden.

Verwende ich den Standard-Port funktioniert alles einwandfrei. Sobald ich einen speziellen Port angebe, ist der Dienst nicht mehr erreichbar. Firewalls etc. sind testweise ausgeschaltet.

Hoste ich den Dienst in einer Konsolenanwendung funktioniert er ebenfalls.

Lösungsvorschläge die ich im Netz für dieses Problem gefunden habe, wie im Folgenden beschrieben, führten leider zu keiner Lösung.
httpcfg set urlacl /u http://localhost:22239/ /a [sddl]
httpcfg set iplisten -i 0.0.0.0:22239

Leider tappe ich vollkommen im dunkeln, woran könnte es liegen?

18.03.2010 - 18:10 Uhr

Lass mal /basic weg und lösch den wsHttpBinding Endpunkt.

18.03.2010 - 17:42 Uhr

Schaut doch gut aus, Dein Dienst ist gestartet und Du versuchst den Proxy folgendermaßen zu erzeugen?

NetCFSvcUtil.exe http://localhost:8731/MobileHotlineToolAnbindungService/
Vielleicht mal Testweise den wsHttpBinding Endpunkt entfernen...

Was kommt denn für eine Fehlermeldung?

18.03.2010 - 17:18 Uhr

Wenn ich mich recht erinnere unterstützt NetCFSvcUtil nur basicHttpBinding.

04.02.2009 - 23:53 Uhr

Hier eine andere Möglichkeit (vorausgesetzt es gibt eine Zahl, die nicht im Wertebereich deines Filterkriteriums liegt):

select * from tabelle where
(userId = VALUE OR VALUE = 0)

In diesem Beispiel sollte die 0 nicht im Wertebereich von userId liegen. Dabei entfällt auch das casten.

04.02.2009 - 23:45 Uhr

Meine Frage ging eher in die Richtung wie ich in einer Hostanwendung (Konsole, Dienst etc.), 2 gleiche Services laufen bereitstelle, die aber unterschiedliche Konfigurationen haben. (ConnectionStrings, Pfade etc.- also nicht die Service Erreichbarkeit bzw. Übertragungseinstellungen, sondern benutzerdefinierte Einstellungen die den Dienst betreffen).

Da ich von außen nicht an den Service herangekommen bin und ich es nicht besser wusste, habe ich jetzt für jede Konfiguration meinen Service vererbt und darin alle Einstellungen festgelegt.
Aber ich glaube noch immer nicht, dass das der richtige Ansatz für das Problem war.

Man muss doch Parameter in den Service herein geben können, oder?

01.02.2009 - 22:43 Uhr

Aber läuft dann der Service nicht als Singleton?

Es ist aus diversen Gründen wichtig das der InstanceContext per Session bleibt .

01.02.2009 - 21:44 Uhr

Hallo Zusammen,

ich habe einen WCF Service der sich aus der app.config seine Konfigurationsdaten wie z.B. ConnectionString u.ä. holt.
Von diesem möchte ich zwei Instanzen anbieten, an unterschiedlichen Ports erreichbar und mit unterschiedlicher Konfiguration.

Wenn ich das ganze mit 2 Hostanwendungen realisiere ist das auch kein Problem.

Allerdings ist das in meinem Fall nicht möglich, da ich nur eine Hostanwendung zur Verfügung habe.
Wie kann ich da vorgehen?

Die Endpunkte müssen nicht unbedingt in die Konfiguration, diese können auch notfalls hart codiert werden. Nur wie verklickere ich meinem beiden Services das sie z.B. jeweils unterschiedliche ConStrings verwenden? Ich muss noch dazu sagen das die Services im Session Modus laufen, also keine Singletons sind.

Für Hilfe wäre ich sehr dankbar.

10.06.2008 - 15:38 Uhr

Hallo Zusammen,

ich verwende eine englische Version von Visual Studio 2008 prof mit den dazugehörigen Crystal Reports. Wollte eigentlich bei der englischen Version bleiben und mir die Deutsche sparen, allerdings ist das User Interface des CrystalReportViewers nun auch in Englisch.
Gibts es eine Möglichkeit die Sprache zu ändern?

Vielen dank schon mal
bonnet

07.04.2008 - 18:40 Uhr

Vielen Dank für die Antworten!

Nicht der Weisheit letzter Schluss, aber so scheints erstmal zu funktionieren:

 public static Guid XorGuid(this Guid x, Guid y)
{
Byte[] xByte = x.ToByteArray();
Byte[] yByte = y.ToByteArray();
Byte[] res = new Byte[xByte.Length];
for (int i = 0; i < xByte.Length; i++)
{

res[i] = BitConverter.GetBytes(xByte ^ yByte)[0]; [/i]
}
return new Guid(res);
}

@herbivore
Wie kann ich den an eine Guid eine weitere hängen und hab dann immer noch eine Guid?

07.04.2008 - 17:58 Uhr

Hallo Zusammen,

ich möchte gerne 2 Guids miteinander zu einer neuen Guid kombinieren, wenn möglich soll der Vorgang auch reversibel sein.
Auch möchte ich gerne eine Guid mit einem Integer-Wert zu einer neuen Guid kombinieren.

Ich hab so in die Richtung eines "exklusiven Oders" gedacht, nur weiß ich nicht wo ich bei einer Guid anfangen soll.

Vielen Dank schonmal im Voraus...

04.02.2008 - 13:27 Uhr

Gibt es wirklich keine Möglichkeit?
Gibt es keine Alternative zu dem Konfigurationsdateien kopieren vor jedem Release?

Grüße
bonnet

28.10.2007 - 19:09 Uhr

Hallo Zusammen,

ich verteile meine Anwendungen per ClickOnce an verschiedenen Standorten.
An jedem Standort unterscheiden sich die Anwendungseinstellungen (Connection String u.ä.) und auch der ClickOnce Server, so dass ich für jede neue Version jeden Standort anpassen muss. Das ist aber ziemlich mühselig.

Kann man das irgendwie automatisieren?

26.07.2007 - 23:56 Uhr

Versuch mal den LIKE / GLOB Operator. Damit kannst du Platzhalter verwednen.
z.B.
WHERE title LIKE hal*

Allerdings funktionieren glaube ich keine Wildcards am Anfang.

26.07.2007 - 21:10 Uhr

Hallo liebes Forum,

gerade fange ich mich mit dem WCF auseinanderzusetzen. Bin gerade dabei eine Chat Beispielanwendung zu modifizieren.

Der Server läuft im InstanceContextMode.PerSession und es gibt eine CallbackContract.

Die Clients melden sich an und werden in einer statischen Liste registriert.

Wenn das Callback eine Exception wirft werden der entsprechende Client aus der Liste geworfen.

Soweit, so gut.

Nun mein Problem:

  • Irgendwann wird die Verbindung beendet und der Channel geschlossen.
    Das liegt am receiveTimeout, das weiß ich mittlerweile. Aber, wenn Client und Server beide betriebsbereit sind - soll diese Verbindung nicht geschlossen werden. Auch wenn die Verbindung 5 Wochen inaktiv ist!
    Abgesehen das ich vom ReceiveTimeOut nix mitkriege und die Clients in meiner statischen Liste als Karteileichen weiterhin existieren - bis ich durch einen Callback auf die Exception stoße.

Nun dachte ich mir, ein Timer der aller halben Stunde mal ein Broadcast an die Clients sendet wäre toll. Nur habe ich keine Ahnung wie/wo ich diesen implementieren soll.
Die Serverinstanzen gibts ja bei jeder Session, das fällt also weg. Einen statischen Timer? Wie soll ich das anstellen - und an welcher Stelle soll ich ihn instanzieren?
Die einzige Möglichkeit die mir einfällt:
Momentan instanziere ich den Server in einer Konsolenanwendung, später in einem Dienst. Dieser Host stellt selbst eine Verbindung zum Server her - meldet sich also wie jeder Client an - und dort ist ein Timer implementiert der aller Minuten den Broadcast auslöst. Diese Lösung kommt mir aber nicht besonders clever vor.

Wie könnte ich es sonst realisieren?

01.06.2007 - 10:39 Uhr

Ich habe bei mir eine Versionsprüfung vor Start der Anwendung eingestellt.
Veröffentlichungssversion muss höher als die aktuell installierte sein und unter dem Menüpunkt "Updates..." muss ebenfalls die Veröffentlichungsversionsnummer eingetragen sein.

Beim Neustarten der Anwendung sollte automatisch die neue Version installiert werden.

Während die Anwendung läuft funktionierts so:


ApplicationDeployment ad = ApplicationDeployment.CurrentDeployment;
ad.Update();
Application.Restart();

Grüße
bonnet

22.05.2007 - 00:59 Uhr

Hallo Zusammen,

wie kann ich in einer net.cf Anwendung das mehrfache Anklicken eines Buttons/Menutitems etc. verhindern?

So nicht:


void menu_Refresh(object sender, EventArgs e)
{
((MenuItem)sender).Enabled = false;
ShowArtikelListData();
((MenuItem)sender).Enabled = true;
}

und so auch nicht


private bool isRefresh = false;
void menu_Refresh(object sender, EventArgs e)
{
if (!isRefresh)
{
isRefresh = true;
ShowArtikelListData();
isRefresh = false;
}
}

nach der ersten Ausführung folgt die zweite usw...

Vielen Dank schon mal

Grüße
bonnet

21.05.2007 - 11:58 Uhr

laufen auch autark.

die daten werden ja im netz auf dem server gehalten, allerdings auch parallel noch in den scannern. sobald die verbindung unterbricht wird erstmal nur lokal gearbeitet, die nachrichten in einer liste gesammelt und bei einer verbindung abgeschickt.

eine kontinuierliche verbindung kann ich leider nicht vorraussetzen, da die halle recht groß ist und nicht vollständig vom wlan ausgeleuchtet wird.

20.05.2007 - 13:24 Uhr

@FZelle

Die Anwednung läuft auf meheren Barcodescanner, die sich ständig abgleichen sollen (derzeit werden unterschiede aller 5 sekunden auf den scanner aktualisiert).

Da die Synchronisation einer Datenbank für dieses kurze Intervall recht aufwendig ist (würde ich einfach mal vermuten), habe ich eine kleine Lösung mit generischen Listen geschrieben. Nun hatte ich die schonmal da, da dacht ich mir, kannste gleich mit weiterarbeiten. Soweit so gut, nur die Performance bei Filteroperationen mit einigen hundert Datensätzen ließ zu wünschen übrig.

@dr4g0n76

Aus Unwissenheit über deren Funktionsweise hab ichs sein lassen...

19.05.2007 - 03:42 Uhr

Besten Dank für die Hilfe!!!

Arbeite jetzt mit 2 Dictionary (für die Primärschlüssel), zusätzlich zu meiner Arrayliste wo alles unsortiert gespeichert wird. Muss ja leider im cf mit einer Arraylist arbeiten, da ich einfach keine generischen Listen serialisieren kann.

Das Programm kommt nun endlich auch mit vielen Datensätzen zurecht...

17.05.2007 - 00:29 Uhr

Hallo Zusammen,

ich habe eine List<T>, wobei T beispielseweise so aussieht:


class T
{
int prim1;
int prim2;
string data;
}

Also 2 integer Werte die zusammen den Datensatz eindeutig machen. Nun muss ich diese Klasse sehr oft nach Daten Filtern (entweder prim1 oder prim2) und synchronisieren. Wenn ich diese mit einer 2ten List<T> abgleiche, benötige ich immer 2 Schleifendurchläufe.

Ich habe schon überlegt noch einen eindeutigen primären Schlüssel zu vergeben der sich aus den beiden zusammensetzt und das ganze in ein Dictionary zu packen. Das würde mir aber nur helfen wenn ich einen einzelnen eindutigen Datensatz ermitteln möchte.
Wenn ich alle Datensätze eines bestimmten Schlüssel haben möchte hilft mir diese Lösung nicht.

Bisher sieht ein Filter so aus:


public IList<OrtArtikelClass> GetListByIdArtikel(int idArtikel)
{
IList<OrtArtikelClass> oaL = new List<OrtArtikelClass>;();
lock (List.SyncRoot)
{
foreach (OrtArtikelClass oaC in List)
{
if (oaC.idArtikel.Equals(idArtikel))
{
oaL.Add(oaC);
}
}

}
return oaL;
}

Was kann ich tun damits schneller wird? Es handelt sich um eine net cf Anwendung, die bei vielen Datensätzen wirklich sehr träge wird...

Vielen Dank schonmal

Grüße
bonnet

14.04.2007 - 21:56 Uhr

Hallo,

wenn du einen m$-sql server verwendest versuchs mal mit

... AND DATEPART(w, datumsspalte) = DATEPART(w, GETDATE())

08.03.2007 - 09:18 Uhr

Vielen Dank, genau da liegt das Problem.

Bei einem System.IO.Directory.GetCurrentDirectory() wird mir Windows\System32 zurückgegeben.
Application.StartUpPath steht nicht zur Verfügung, da keine WindowsForms Anwednung.

Wie kann ich sonst das Installationsverzeichnis des Dienstes ermitteln?

Oder muß ich meine Excel Vorlage in Windows\System2 installieren?

07.03.2007 - 23:02 Uhr

Hallo Zusammen,

ich habe ein kleines Programm geschrieben, welches eine Excelliste erzeugt und diese per Mail versendet.

Lasse ich das Programm als Konsolenanwendung laufen funktioniert alles tadellos.
Lasse ich es als Dienst laufen funktioniert der Excel-Export nicht. Es wird immer nur eine leere Datei erzeugt.

Der Excel-Export funktioniert folgendermaßen:
Ich kopiere eine bestehende Datei in eine Tempdatei, füge noch ein paar weitere Zeilen per Ole hinzu und speichere/versende diese.

Den Dienst hab ich auch schon unter verschiedenen Konten, wie auch dem lokalen Systemkonto laufen lassen, doch alles ohne Erfolg.

Woran kann das liegen?

Grüße bonnet

14.01.2007 - 16:59 Uhr

...ändert leider nix

14.01.2007 - 14:04 Uhr

Hallo Zusammen,

ich habe einen System.Threading.Timer in einer Konsolenanwendung. Dieser verrichtet dort ganz normal seine Dienste.
Doch wenn ich meine Anwendungseinstellungen mit Properties.Settings.Default.Save(); speichere, verweigert er prompt seine Arbeit. Woran kann das liegen?

Grüße
bonnet

14.11.2006 - 14:34 Uhr

Wollt dieses Thema nochmal kurz aufgreifen.
Hat jemand eine bessere Lösung als die von mipper beschriebene? Gibt es in VS 2005 Möglichkieiten?

Danke und Grüße
bonnet

13.11.2006 - 13:52 Uhr

Hallo,

ich habe eine recht umfangreiche Klasse für das Net CF geschrieben, welche die Daten diverser Webservices zussammenführt. Ich würde diese Klasse nun gern in einer Windows Forms Anwendung nutzen. Leider ist der asynchrone Zugriff auf Webservices bei Winforms anders als im CF. Aus Zeitgründen und vorallem aus Gründen der Wartbarkkeit möchte ich diese Klasse nicht umschreiben.

Gibt es irgendeinen Trick das ich den CF Code auch unter Winforms nutzen kann, ohne große Änderungen am Code vorzunehmen?

Danke und Grüße
bonnet

20.10.2006 - 11:04 Uhr

Original von Rainbird
Kommt der Fehler bei jedem Bericht oder nur bei einem ganz bestimmten?

Kommt bei jedem Bericht. Selbst bei neuen Projekten, welche nur den Bericht enthalten.

Original von Rainbird
Hast Du ältere Versionen von Visual Studio (für .NET 1.0, 1.1) auf der selben Maschine installiert?

Keine Entwicklungsumgebungen. Nur diverse sdk's und alle Compact und Frameworkversionen. Hab den Rechner auch vor gar nicht allzu langer Zeit neu eingerichtet.

Original von Rainbird
Ist Dein Benutzer in der Gruppe "Administratoren" des lokalen Systems?

Klar, bei Windows hat man das so...

Original von Rainbird
Greifen auf Deinem Rechner möglicherweise irgendwelche ActiveDirectory-GPOs, die CAS-Richtlinien enthalten?

Ist ein Rechner der nicht direkt im Firmennetz integriert ist, an keiner Domäne hängt und keine ActiveDirectory Regeln definiert hat.

Werde dann wohl am Wochenende das VS neu installieren, vielleicht hilfts ja. Obwohl ich mir es kaum Vorstellen kann, da es ein glatter Rechner war und ich bisher nur meine Entwicklungsumgebung und das ganze Zeug rundherum installiert hab.

Besten Dank erstmal und Grüße
bonnet

19.10.2006 - 22:25 Uhr

Hallo Zusammen,

ich bekomme Crystal Reports bei mir einfach nicht zum laufen. Nach dem erstellen oder importieren eines Berichts kommt folgender Fehler:



Fehler in benutzerdefiniertem Tool: "Der Code-Generator 'ReportCodeGenerator' konnte nicht ausgeführt werden. Ausnahmestapel = System.Exception: Der Bericht konnte nicht geladen werden. ---> System.Runtime.InteropServices.COMException (0x80004005): Das System kann den angegebenen Pfad nicht finden.

Ich habe Visual Studio 2005 prof. mit zugehörigen Crystal Reports.

Hat schonmal jemand diesen Fehler gesehen?

Danke und Grüße
bonnet

11.10.2006 - 14:54 Uhr

Danke schön, aber das hab ich schon gemacht, das Problem ist das Minimieren durch Klick auf die Taskleiste.
Ich wollte es durch Windowsnachrichten versuchen, läßt sich aber leider nicht ganz so einfach im cf implementieren wie von Andreas.May beschrieben. Bin aber dran, ist eben auch alles eine Zeit Frage...

Grüße
bonnet

10.10.2006 - 20:00 Uhr

Besten Dank für die Antworten.

@DarkShadow81
Leider wird im CF die Funktion GetProcessesByName() nicht unterstützt.

@Kostas
Das gilt wohl nicht überall. Ich kann meine CF 2 Anwendung unter WinCe 5 beliebig oft starten.

Ich habe hier eine Lösung gefunden.

Grüße
bonnet

10.10.2006 - 14:31 Uhr

hallo,
gibt es noch andere als in der faq beschirebene möglichkeiten?
ich möchte einen mehrfachstart in einer cf anwendung verhindern, dort gibt es keinen konstuktor für named mutex?

grüße bonnet

04.10.2006 - 10:07 Uhr

Hallo,
im CF fehlt allerdings in der FormWindowState Enumeration das Minimized. Was kann ich alternativ dafür verwenden?

Grüße
bonnet

04.10.2006 - 00:52 Uhr

Hallo Zusammen,

wie kann ich denn das Minimieren einer Net Cf Anwendung abfangen. Speziell wenn die Anwendung durch Klick auf die Taskleiste minimert wurde.

Bin für jede Hilfe dankbar...

Grüße
bonnet

28.09.2006 - 14:42 Uhr

das geht erst ab 2005, dann aber die klammer nicht vergessen
SELECT (TOP @amount) * FROM table

22.09.2006 - 10:12 Uhr

versuch mal das hier klick

21.09.2006 - 12:27 Uhr

Als Stichwort wäre NotificationServices zu nennen, damit kannst du die Events in deinem Programm abonnieren.

Willst du innerhalb der Datenabnk reagieren nimmst du Trigger.

20.09.2006 - 13:39 Uhr

Ich bin jetzt mein Problem umgangen und habe auf das ableiten von Dictionary<> verzichtet. Obwohl ich mir immer noch nicht sicher bin, was ich falsch gemacht habe:


public class WebServiceControlList : Dictionary<WebServiceTyp, WebServiceControlClass>

20.09.2006 - 13:07 Uhr

Hallo Zusammen,

ich verwende in meiner CF 2 Anwendung seit heute ein Dictionary<...>, hab jetzt alles soweit fertig und will das Ding auf dem Gerät Testen. Allerdings bricht er mit folgender Fehlermeldung ab:

Could not load type 'System.Collections.Generic.Dictionary`2' from assembly 'mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=969DB8053D3322AC'.

Gibts jetzt kein Dictionary im Net CF, oder wie soll ich das verstehen?

18.09.2006 - 16:10 Uhr

Hallo,
meine kleine cf anwendung (cf 2 auf win ce 5) wird im Laufe des Betriebs immer langsamer. Wahrscheinlich liegt das Problem an nicht freigegebenen Speicher - würde ich vermuten.
Allerdings weis ich nicht wirklich wie ich dem Problem auf die Schliche kommen soll, außer eben den Quelltext Zeile für Zeile durchzugehen.
Was gibt es denn da für kleine Helferlein die einem da in der Arbeiet unterstützen.
Eine große Hilfe wäre schonmal eine Anzeige wieviel Arbeitsspeicher meine Anwendung belegt.

Danke und Grüße
bonnet

15.09.2006 - 11:03 Uhr

@LordHessia

Im Editor einstellen, dass Tabs als (2 oder 4) Leerzeichen gelten sollen. Dann gibt's auch keine Probleme mit dem Öffnen in anderen Editoren.

Ist im Quelltexteditor auch eingestellt, kopier ichs hier ins Forum sind die Tabs ääh Leerzeichen auch noch da, nur nach dem senden sind sie weg.

@Herbivore

Das stimmt nicht! Sort ist implementiert, auch in allen Überladungen, die man barucht.

Natürlich hast du recht, hatte wohl vergessen warum ichs nicht hinbekommen hab. Das Problem war, da es sich um eine Multithread Anwendung handelt und mehrerre Threads auf die Liste zugreifen arbeite ich mit ArrayList.Synchronized() - was ich mit generischen Listen nicht geschafft habe.

kann ich mir nicht vorstellen. Eine einzelene Anweisung, die nicht in einer engen Schleife steht, wird z.B. fast nie performancekritisch sein.

ich gehe gerade den langen steinigen weg und schau mir noch mal alles an. Das Hauptproblem sind die Webservices, welche alle paar Sekunden die offline Daten mit den aktuellen vergleichen. da hab ich aber nicht viel einfluss - also versuche ich die den Listenzugriff zu beschleunigen, da ja alles mit den zentralen Daten arbeitet.

15.09.2006 - 10:35 Uhr

Danke für die schnelle Antwort

du solltest die Performance nur da optimieren, wo sie zum Problem wird oder werden kann. Es ist nicht sinnvoll global zu optimieren. Normalerweise gibt es in eine Anwendung ganz wenige "Hotspots", die die Performance fressen und bei deren Optimierung man die Anwendung spürbar beschleunigen kann.

Schon klar, aber ich glaube bei der ANwendung zählt jedes Quäntchen.
Die Anwednung läuft auf einen Barcode Scanner, und in einen Arbeitsgnag müssen die Mitarbeiter Artikel zählen. Die Leute sind aber dermassen schnell beim Scannen, das schon das sichtbamachen eines Formulars zum Problem wird.

Diese Hotspots findet man mit einem Profiler.

Gib es irgendwo ne Anleitung oder kannst du mich Stichworte nennen was ich fürs CF benutze kann und wo ich ansetzen muß?

Anonsten: warum verwendest du nicht List<T> bzw. IList<T>?

Wenn ich ehrlich bin: Wegen des Aufwandes. Ich hab noch nie mit generischen lsiten gearbeitet, habe festgestellt das keine sort methode implementiert ist (und shcon 1000sende IComparer geschrieben) - einen enormen zeitdruck, da das projekt schon ne weile überfällig ist - und nicht auf Anhieb gefunden wie das geht, also hab ich sein lassen...

Aber vielleicht muss ich mir doch die zeit nehmen.

15.09.2006 - 09:56 Uhr

Hallo,

ich bin gerade bei der Geschwindigkeitoptimierung meiner cf-anwendung. Jetzt habe ichs auf Casting abgesehen und stehe vor einem problem. ich habe eine arraylist, wobei die member einer eigenen klasse angehören:



class MyClass
{
public bool IsResult;
}


Wenn ich jetzt eine bestimmte menge aus der arraylist zurückgeben will, mach ich das momentan folgendermaßen:


...
public ArrayList GetAPieceOfList()
{
res = new ArrayList();
foreach (MyClass mc in MyList)
{
if (mc.IsResult)
{
res.Add(mc);
}
}
return res;
}
...

Soweit so gut, nur muss man das einzelne Objekt doppelt casten, einmal die filterfunktion, zum anderen der Aufrufer, da er ja ne Arraylist zurück bekommt.

Also wäre ja als Rückgabe ne Auflistung (MyClass[]) ideal, so machen das ja auch die meisten Funktionen im Framework.

Nur wie soll ich das anstellen, da ich nicht vorher weiß wieviel Datensätze in die Rückgabe reinkommen und ich die Kapazität der Auflistung bereits anfangs festlegen muss.
Da müßte ich erstmal in der Liste schauen wieviel Datensätze es sind (1. casting) und anschließend die liste füllen (2. casting).
Also hab ich nix gekonnt - gibt es da ne elegantere (bessere) Lösung?

Und noch ne Frage am Rande, wie bekommt ihr es hin, dass euer Quelltext im Forum die Tabs mitbekommt?

12.09.2006 - 13:37 Uhr

Danke für die Antwort.

Müßte ich den Wrapper auch bei einer Liste verwenden auf die nie schreibend zugegriffen wird?

11.09.2006 - 15:49 Uhr

Hallo,
ich wollte mal nachfragen ob ich die Sache mit dem lock richtig verstanden hab.
Ich habe eine Liste auf die alle möglichen Threads zugreifen können. Diese ist in nem Objekt drin. Reicht es aus sie über getter/setter einfach vor unrechtmäßigen Zugriff schützen?
In der Art...


private OrtArtikelList list;
public OrtArtikelList List
{
get
{
lock (list)
{
return list;
}
}
set
{
lock (list)
{
list = value;
}
}
}

Dank schon mal

Grüße
bonnet

09.09.2006 - 16:31 Uhr

die saubere lösung: im uc ein eigenes event definieren, welches im eventhandler des buttons gefeuert wird.

die quick and dirty lösung: modifiers auf public setzen, davon ist aber eher abzuraten...

07.09.2006 - 19:01 Uhr

Vielen Dank für die tollen Tipps,
habs zwar nicht hinbekommen wceload direkt über die registry aufzurufen, ahb dann aber ne kleine cf 1 anwendung geschrieben, die cf 2 und meine programme installiert

jetzt funktionierts

05.09.2006 - 12:45 Uhr

scheinbar funktioniert das ausführen von cab files nicht über die registry. Programme kann ich starten wie ich will, nur cab dateien werden ignoriert (der versuch die cab dateien über eine verknüpfung aufzurufen ist auch gescheitert).

kennt irgendjemand einen ansatz wie ich das framework trotzdem automatisch installieren kann?

05.09.2006 - 08:00 Uhr

die registry ist das einzige was nach einem soft-reset erhalten bleibt (und der systemordner), also auch der schlüssel ist noch da.