Laden...

Forenbeiträge von Xynratron Ingesamt 1.177 Beiträge

14.02.2011 - 15:48 Uhr

huhu,

schau Dir mal
Team Foundation Server SDK an. Da gibts scheinbar einiges an Beispielen.

Edit: Workspace.Get Method (String[], VersionSpec, RecursionType, GetOptions)

😃

Xynratron

14.02.2011 - 09:07 Uhr

huhu,

wenn ich auf Windows 7 "osk.exe" starte, bekomme ich eine Bildschirmtastatur, und kein Konsolenfenster... Was erwartest Du für einen Prozess?

😃

Xynratron

14.02.2011 - 09:04 Uhr

huhu,

wie schon gesagt, die Bounces interessieren Spamversender überhaupt nicht, vor allem sind die Absender-Adressen auch meist falsch. Damit schaffst du es nur, selbst sehr viele Bounces zu erzeugen und zu bekommen^^

Es gibt leider keinen Königsweg - sonst würde der schon lange verwendet. Mit das effektivste zur Zeit ist Greylisting. Dafür muss man aber den EMail-Server konfiguieren. Das darfst du vermutlich nicht. Dann kann man noch einen Spam-Service mit einbinden, hier hat man aber wieder das Problem der False-Positives (gute Mail wird als Spam eingestuft).

Prinzipiell muss ich mich korrigieren, es gibt einen Königsweg: White-Listing. Allerdings eben mit dem Nachteil, dass man nur noch Mails von den Leuten auf der Liste bekommt...

😃

Xynratron

14.02.2011 - 08:47 Uhr
10.02.2011 - 18:08 Uhr

huhu,

eine Transaktion abzubrechen schadet keinem DB-System. Genau dafür sind Transaktionen da. Auch das beenden einer Verbindung sorgt in dem Fall für einen Rollback der Transaktion. Sogar bei einem Stromausfall wird im Normalfall beim wiederanlaufen der DBs geguckt, ob man noch ein paar transaktionen, welche nicht fertig waren, wieder rückgängig machen muss.

Für dein Problem gibts aber IDbCommand.Cancel(). Dann würde ich aber auch zusätzlich die BeginXXX-Methoden verwenden um das ganze asynchron zu halten.

😃

xynratron

10.02.2011 - 10:23 Uhr

huhu,

ja, aber den Ausgabestream einer Konsolenanwendung zu durchsuchen um zu erkennen wann eine neue Eingabe erforderlich ist, war ja nicht das Anfangsproblem.

Wenn du das ganze nicht synchron, sondern asynchron erledigen kannst, dann sie dir mal die Events von Process an.

😃

Xynratron

09.02.2011 - 19:47 Uhr

huhu,

naja, es ging ja um den publish - dachte ich jedenfals^^

Lokaler IIS zum debuggen nutze ich nicht, allerdings musst du doch auch beim Debuggen die "Website erstellen", damit du die aktualisierten dll's bekommst (ähh, wenn man mit mehreren Projekten arbeitet), oder? Da bekomme ich dann auch regelmäßig die Fehler angezeigt. Deswegen wäre ich nie draufgekommen, dass dieses Flag die Website published (erstellt) ohne dass ein Fehler in den ascx-Files ausgegeben wird 🤔

Ich finde das verhalten des aspnet-compilers eh seltsam.

🙂

Xynratron

09.02.2011 - 19:20 Uhr

huhu,

Ja und Nein, das liegt an der Option "Aktualisierbarkeit dieser vorkompilierten Site zulassen" respektive dem switch -u.

Folgendes "aspnet_compiler -p "$(ProjectDir)." -u -v /$(ProjectName)" erzeugt auch keinen Fehler.

Wenn Du diesen Schalter eh weglässt, dann kannst Du auch im Wizard diesen Schalter deaktivieren und du bekommst deinen Fehler.

😃

Xynratron

09.02.2011 - 09:40 Uhr

huhu,

ja, da AnkhSVN "nur" ein SVN-Client ist.

😃

xynratron

09.02.2011 - 09:37 Uhr

huhu,

wie überprüfst Du was in der DB steht? (nicht dass es nur ein Darstellungsproblem ist)

Bei uns funktioniert das immer reibungslos, auch der SQL-Server kann "Sekunden". Beim 2008er kannst Du alternativ den DateTime2-Datentyp verwenden. Der ist in der genauigkeit dem DateTime von .net angepasst.

😃

Xynratron

09.02.2011 - 08:46 Uhr

huhu,

Es gibt die Extensionmethod "Distinct" damit bekommst du eine "gereinigte" Liste (in deinem Fall).

Alternativ ein Dictionary aus deiner bestehenden Liste aufbauen mit dem obj als Key.

Edit: mit "manuell" meinst du, dass du es nicht selbst "ausprogrammieren" musst?

😃

Xynratron

08.02.2011 - 21:05 Uhr

huhu,

ähh, ich werf noch GhostScript in den Raum. Kann imho sagar pdf zu tiff direkt.

😃

Xynratron

08.02.2011 - 20:37 Uhr

huhu,

ich sags ungern: vergiss es. "edb" ist ein Datenbankformat für den Exchangeserver. Du müsstest also binär das Format lesen und verstehen. Die "Jungs von Ontrack" sind nicht allein und haben Jahre Know-How. Das kann man nicht schnell nachbauen.

Ich will dir eine Alternative zeigen: In einer virtuellen Umgebung das AD und den Exchange wieder zum Leben erwecken, dann die Daten auslesen und zum neuen Exchange überspielen. Du brauchst allerdings ein Backup des AD bevor der "alte" Server aus dem AD entfernt wurde.

😃

Xynratron

08.02.2011 - 20:30 Uhr

Hallo Mini25,

Probier es doch mal aus. Oft sind Datenbanken so schnell, dass man im ersten Step nicht über Zwischenspeicher nachdenken muss. Später kann man dann noch was dazunehmen, wenn es nicht reicht. Denke nur daran, das ganze etwas in Layer aufzuteilen.

😃

Xynratron

08.02.2011 - 20:19 Uhr

eine sessionbasierte Lösung gesucht wird um den Singleton entsorgen zu können 😃

hoffen wir mal 😃

dann wäre aber [WebMethod(EnableSession = true)] aus dem ersten Post korrekt (Nochmalige Erwähnung, damit es nicht überlesen wird).

Liebe Grüße

Xynratron

08.02.2011 - 20:14 Uhr

huhu,

Hm aber dieses Script hilft mir nur fürs Kompilieren im Localhost richtig? Ich möchte nach dem Publshen auf den Server vorkompilieren..

ja, nee, möchtest du nicht. Wenn du im VS einen Publish ausführst, bekommst alles kompiliert und fertig zum kopieren auf den Server. Also musst du dann nur noch diese Dateien hoch/rüber kopieren, nichts mehr kopilieren.

😃

Xynratron

08.02.2011 - 20:10 Uhr

huhu,

ich kenne jetzt NHibernate nicht, aber "Web" "Session" und "Singleton" lässt mir die Haare zu Berge stehen. Bitte nicht ein Session-Object per Singleton zur Verfügung stellen. Das gibt ganz böses Verhalten, da man im Web immer mit Multithreading rechnen sollte. Wäre ja doof, wenn durch ein Singleton das Session-Objekt zwischen den Benutzern geteilt wird (und seien es nur die rechte für die Datenbank :evil: ).

ich hoffe ich habe es falsch verstanden 🙂

🙂

Xynratron

06.02.2011 - 22:24 Uhr

huhu,

Perfomance-Counter liefern Dir hier die notwendige Information.

Aber: Dein Vorgehen ist etwas unüberlegt: Eine Festplatte schafft ohne Probleme > 100MB lesenden Zugriff, eine 1 GBit-Netzwerkkarte aber nicht. Dewswegen ist der Flaschenhals in diesem Fall immer das Netzwerk und Deine Idee zwar interessant, aber unwirksam. Zusätzlich werden Daten im Arbeitsspeicher gepuffert. Das bedeutet, wenn 2 mal dieselbe Datei angefordert wird, dann wird sie nur einmal physisch von der Festplatte gelesen. wenn Du aber beim 2. Zugriff eine datei von einer anderen Festplatte liest, dann greift dieser Mechanismus nicht mehr. Zum 3. gibt es ja für einen schnelleren Festplattenzugriff die "Idee" eines Spiegelsets (lässt sich auch als Raid mit datensicherheit afbauen) - damit erhält man einen schnelleren Datendurchsatz zu den physischen Datenträgern. Wir haben hier mal ein kleines Raid5 mit SSD aufgebaut, das macht ca. 700 MB/sek. Ein Raid50 mit SATA-Platten schafft bei uns ca. 300MB/sek.

😃

Xynratron

04.02.2011 - 21:07 Uhr

huhu,

desweitern gibts noch nen ADO-Treiber für Excel, und wenn Excel nicht geöffnet (sichtbar) ist, sollte es auch schneller werden.

😃

Xynratron

04.02.2011 - 21:02 Uhr

huhu du Spamer

Danke für Deine Problemlösung 🙂

Auch wenn das nicht gepinnt wird (sonst wären hier mittlerweile millionen Pins) - ich (und viele andere hier) können uns das merken und entsprechend verweisen, abgesehen von der SuFu, wird es nicht untergehen. Wenn Du auch aktiv bleibst erst rechnt nicht.

🙂

Xynratron

Edit: ausserdem bist Du mal wieder ein lebender Beweis dafür, dass man sich nicht nur auf die SuFu anderer verlassen soll 😁

04.02.2011 - 20:23 Uhr

huhu,

ja, bei uns läuft es ähnlich wie bei Abt, mit dem Unterschied, dass wir den Pfad im IIS ändern. Dadurch kann man auch wieder zügig zur alten Version zurückkehren.

Aber, die Session kann troztdem sterben. Dann ist es egal "wie lange" der Update dauert.

.-)

Xynratron

04.02.2011 - 20:12 Uhr

ja, IE7-Kompatibilitäts-Rendering ist != IE7-Rendering.

Ausserdem hab ich heute von einem unserer Designer gehört, dass das Marketing "festgestellt" hat, dass das im IE9 "komplett falsch aussieht".

naja, bei Firefox & Co. kann man sich noch drauf verlassen, dass das Aussehen der Seite gleich bleibt. Beim IE ist es von Version zu Version anders...

04.02.2011 - 20:02 Uhr

huhu,

wollte noch in den Raum werfen, dass sich "alle Schleifen" immer als for () darstellen lassen. Auch ein "goto" ist nur eine verkappte Schleife.

naja, aber eine Schleife definiert sich doch eh nur durch die Tatsache, dass Code mindestens 2x durchlaufen werden kann, oder?

Auch ein if-goto ist dann eine Schleife und kann durch ein for() ersetzt werden. Damit sollten sich doch die Möglichkeiten deutlich reduzieren.

😃

Xynratron

04.02.2011 - 19:38 Uhr

huhu,

ist vom Prinzip einfach. Du musst erst den Stream Empfangen, wenn Du das hast, dann musst du noch die Pakete richtig zusammensetzten. Ich frag mich an der Stelle ob der "Header" wirklich im UDP-Paket jedesmal vorhanden ist, oder ob sich erst nach zusammensetzen des UPD-Paketes dieses Hersteller-Paket erzeugt. Wie auch immer, in den Nutzdaten scheinst du unkomprimierte PCM-Daten zu haben (WAV), diese dann auf das Sounddevice schicken/ausgeben.

😃

Xynratron

Edit: wichtig bei UDP, Pakete dieser Art weden vom Empfänger geschickt, ohne dass der Empfänger sagen muss ob sie auch angekommen sind. Es wird also mit Verlust gerechnet (im Gegensatz zu TCP). Desweiteren ist hier - wie auch bei TCP - die Reihenfolge der ankommenden Pakete nicht definiert. die muss man wieder selbst sortieren.

04.02.2011 - 11:40 Uhr

huhu,

Warum benutzt Du eigene Threads? Es gibt im Normalfall die Funktionen auch Asynchron (XXAsync) mit Events wenns fertig ist. Aber das nur am Rande, Dein Problem bliebe das Gleiche.

Wenn du a) keine gemeinsem genutzten Ressourcen verwendest, oder b) Seiteneffekte ausschliessen kannst, ist alles in Ordnung.

Dein Vorgehen funktioniert auch wenn sich die beiden Threads die Proxy-Instanz teilen. Ich würde aber trotzdem jedem Thread eine eigene Instanz geben (und diese auch wieder zerstören (lassen) wenn sie nicht mehr gebraucht wird).

😃

Xynratron

02.02.2011 - 13:35 Uhr

huhu,

Google doch mal ein bischen nach "send ata command to harddrive" und ähnlichem. Vermutlich gibt es da auch nen Befehl der die unterstützen Befehle zurückgibt.

Auf die schnelle hab ich noch ein paar querverweise zu "SPTI" gesehen (ist ne WindowsAPI). Wenn du über ASPI stolperts, das würde ich nicht verwenden, kommt/kam imho auch nur mit Adaptec CD-Brennern.

Hier sind noch ein paar Links zum gucken:

http://www.powerbasic.com/support/pbforums/showthread.php?t=13810
http://www.powerbasic.com/support/pbforums/showthread.php?t=38364
http://www.powerbasic.com/support/pbforums/showthread.php?t=23071

Evtl. musst du dir aber auch ne *.vxd schreiben, ich hatte vor Jahren mal eine, um den Datentransfer von/zur HDD anzugucken. Ist aber schon zu lange her, als dass ich da noch Quellcode habe.

😃

Xynratron

02.02.2011 - 13:16 Uhr

huhu,

in der XML müsste oben doch der Namespace definiert sein. Der Namespace-Manager wird wegen

nsmgr.AddNamespace("n0", "http://www.clicksoftware.com");

diese Zuordnung sehen und dann in deinem XPath den Namespace entsprechend ersetzen. Das Ziel von Namespaces ist nicht, dass sie im Dokument immer "gleich" benannt werden müssen, sondern eine Zuordnung zu ermöglichen. Die Abkürzung ("ns0" vs. "ns1") wird im XML-Dokument angegeben.

😃

Xynratron

02.02.2011 - 10:58 Uhr

PS: und wehe ich höre nochmal "nimm MD5" in Zusammenhang mit Kennwörtern...
In meinen "Internet Technologies" Project speichere ich die Passwörter eines jeden Benutzer in MD5 auf dem Server. scnr
ok, dies hat aber auch den Zweck der Überprüfung ob der Login korrekt ist und nicht zur Speicherung.

und dann verweist du auch noch auf Kennwortsicherheit - Hashing von Kennwörtern - oO - schäm Dich! ^^

02.02.2011 - 10:33 Uhr

huhu,

Bitte werft doch nicht "Hash" und "Verschlüsselung" durcheinander.

Ich kann keinen Connectionstring (oder Benutzername und Kennwort) hashen und dann erwarten, da wieder nen Klartext rauszubekommen. Sonst hätte man ja bei MD5 schon einen super duper krass Komprimieralgorithmus (mal kurz ein 5 GB Filmchen auf 128 Bit komprimiert...)

Was benötigt wird, ist eine Verschlüsselung. Nachdem man diese Daten entschlüsseln kann, kann das aber auch ein Angreifer mit genug Energie.

Beim SQL-Server als DB-Server gibts übrigens einen wunderbaren Trick: Windows-Anmeldung. Da brauchts dann keinen Benutzernamen/Kennwort, da die integrierte Benutzerverwaltung verwendet wird.

Vielleicht kann ja MySQL auch was in der Richtung, abgleich per LDAP fällt mir da ein (z.B. Active Directory).

😃

Xynratron

PS: und wehe ich höre nochmal "nimm MD5" in Zusammenhang mit Kennwörtern...

01.02.2011 - 19:21 Uhr

Hallo Mini25,

ich bin mal so lieb und schreib noch was dazu. Deine Fragen sind etwas "spezieller" als sie wohl im openbook abgehandelt werden.

die ersten 3 Fragen zu 2:

Nein. Wenn Du das Dataset speichern (alle Änderungen zurückschreiben) willst, erhältst du eine Exception. Diese kann man abfangen und entsprechend reagieren. Die Tabellen müssen nicht mit Zeitstempeln versehnen werden (können aber). In dem Fall werden einfach alle Felder auf eine Änderung kontrolliert (Die alten Werte im Dataset müssen noch der DB entsprechen, ansonsten wurde was geändert)

zu der letzten Frage: [Artikel] Ressourcen schonen - Datenbanken richtig öffnen und schließen

😃

Xynratron

01.02.2011 - 17:58 Uhr

huhu,

aber eine "OleDbConnection" übergeben? Bitte nicht. [Artikel] Ressourcen schonen - Datenbanken richtig öffnen und schließen

😃

Xynratron

01.02.2011 - 17:53 Uhr

huhu,

ich kann Dir nur nen Tip geben. Habe vor einigen Wochen in einen Sharepoint-Webservice reingeguckt, es gibt da einige Methoden, unter anderem welche die imho "update" heissen.

Mehr hab ich leider nicht mehr im Hinterkopf. Aber goole kann auch was: klick mich

😃

Xynratron

01.02.2011 - 13:27 Uhr

huhu,

ich denke, es wird nichts angegeben, da man es nicht allgemeingültig sagen kann. Vor allem bei SQL wird ja auch das SQL-Statement bewertet und die möglichst effektivste Vorgehensweise gesucht.

z.B. ist ein Join davon abhängig was gejoint werden soll. Unter SQL z.B. ist ein Join über einen Index schneller, als wenn kein Index vorhanden ist. Wenn man dann auch noch keinen Clustered-Index hat, wirds nochmal langsamer.

Desweiteren kann es durchaus in der Implementation Unterschiede geben, je nachdem wieviele Elemente in den Listen sind. Auch Statistiken könne eine Rolle spielen.

😃

Xynratron

01.02.2011 - 12:51 Uhr

huhu,

im Prinzip nur dann, wenn Du oft in die catch-Blöcke kommst. Man sollte es also tunlichst vermeiden, eine Ausnnahme (Exception) als Regel in die Programmlogik zu implementieren.

😃

Xynratron

01.02.2011 - 12:43 Uhr

huhu,

hatte einglich erwartet das Microsoft da was anbietet.

Entity-Framework, Linq2SQL

😃

Xynratron

01.02.2011 - 12:29 Uhr

huhu,

Das ganze ist auch nicht ganz eindeutig. Wenn man z.B. einen Raidcontroller benutzt, dann bekommt Windows gar keine echten physischen Informationen, sondern die logischen Infos des Raids (Sektoren, Kapazität usw.) und auch nur den in der Controller-Config hinterlegten Namen des Raids als HDD-Bezeichnung. Also z.B: "Array0" statt "IBM DTLM 1755". In dem Fall gibts dann auch keine RPM.

Vielleicht gibts über die Hardware-IDs (siehe Gerätemanager) irgendwelche identischen Infos. Denn eine SSD braucht ja ab und an mal den "TRIM" Befehl. Das kann Windows, ergo muss Windows auch ne Info darüber haben.

Edit: naja, da wäre es ja am einfachsten, zu überprüfen, ob die HDD den ATA-Befehl TRIM unterstützt.

😃

Xynratron

31.01.2011 - 14:40 Uhr

huhu,

Process hat extra ein Event dafür: OutputDataReceived

😃

Xynratron

31.01.2011 - 13:24 Uhr

huhu,

unter http://support.microsoft.com/?kbid=970430 gibts noch ein Update, das sollte die Version von http.sys anheben auf:

Http.sys 5.1.2600.5891
Size: 265,728kB, Date: 20-Oct-2009

und ändert noch ein paar Dateien mehr. Vielleicht hilft das auch schon.

Auf der anderen Seite: mit welchen Rechten läuft der Dienst? Darf der überhaupt ins Netzwerk?

😃

Xynratron

31.01.2011 - 13:15 Uhr

huhu,

ja, das machen praktisch alle OR-Mapper - oder man macht es per Hand.

Ich verstehe jetzt aber dein eigentliches Problem nicht wirklich.

😃

Xynratron

31.01.2011 - 12:07 Uhr

huhu,

a) Deinen Code in ein neues Projekt einfügen
b) web.config anpassen: MSDN

Debuggen geht wie sonst auch.

😃

Xynratron

31.01.2011 - 09:46 Uhr

jap, viele Wege, ein Ziel 😃

31.01.2011 - 09:44 Uhr

HostHeader sind ja die Grundlage, wie man mehrere Domains über 1 IP ansprechen kann.

Ähh, imho ist es keine Grundlage, sondern nur eine schöne Möglichkeit, um in einem Webserver die auf einer IP ankommenden Domains auf unterschiedliche Applikationen zu lenken.
Deswegen kann ein Server aber trotzdem mehrere Domains zu einer IP bekommen, auch ohne HostHeader. Auch eine "intelligente" Applikation kann die Domains intern verwalten und entsprechend ihr Aussehen/Verhalten gestalten.

😃

Xynratron

31.01.2011 - 09:35 Uhr

huhu,

Wenn der DB-Server nicht entsprechend gesichert ist, kann auch über eine simple SQL-Injection großer Schaden entstehen.

Du kannst den DB-Server sichern wie du willst. wenn die Anwendungen SQL-Injection zulassen, dann nützt dir das alles meistens nichts.

Ja, meistens 😃 Ich dachte da eher an ein "1=1'; drop table users; --" wenn aber die Zugriffe z.B. über SPs gehen und/oder der verwendete DB-User die Berechtigung dafür nicht hat, dann geht das z.B. nicht mehr. Aber egal - letzendlich muss man nicht nur die Anwendung sicher machen - eine Kompromitierung des Web-Servers kann ja auch über andere Möglichkeiten geschenen - sondern auch seine DB im Hintergrund entsprechend schützen. Eine Einschränkung der Benutzerrechte wäre schonmal ein erster Schritt.

Schön aber, dass mal jemand nachfrägt, meiner Meinung nach wird das Thema "Sicherheit" immernoch extrem vernachlässigt.

😃

Xynratron

31.01.2011 - 09:15 Uhr

huhu,

zu den Virtuellen Verzeichnissen Es sind dann "verschiedene" Anwendungen - deswegen haben die unterschiedliche Sessions.

Per web.config lässt sich das mit URL-Mappings lösen:

<urlMappings enabled="true">
    <add url="~/DE/index.aspx" mappedUrl="~/Index.aspx"/>
    <add url="~/EN/Index.aspx" mappedUrl="~/Index.aspx"/>
</urlMappings>

Wird bei vielen Seiten aber auch entsprechend viel. Alternativ kannst du in der global.asax auch in Application_AcquireRequestState den Pfad überprüfen und entsprechend handeln.

Bin aber gerade über nen älteren Artikel von Scott Guthrie gestolpert Url Rewriting with ASP.NET gestossen. Da gibts auch nochmal einige Überlegungen/Lösungen zu dem Thema.

Persönlich würde ich das über Sub-Domains lösen:

de.example.com/index.aspx für DE und
en.yyy.com/index.aspx für EN

das macht es etwas leichter die "Sprache" zu finden ohne, die Seitenstruktur zu ändern. Zusätzlich lässt sich eine "neue" Sprache einfach durch eine neue Subdomain einrichten.

😃

Xynratron

31.01.2011 - 08:50 Uhr

huhu,

Es gibt keine Konvention wie eine MVC (oder jede andere Anwendung) mit einem bestimmten DB-System eine Connection aufmachen soll. Das würde ja der Idee wiedersprechen, das DB-System austauschbar zu halten bzw. die Anwendung in einzelne Layer zu unterteilen.

Richte Dich einfach nach den Beispielen zum SQL-Server - das es ja der Anwendung letztendlich egal ist, was für eine DB drunter liegt.

😃

Xynratron

30.01.2011 - 22:51 Uhr

huhu,

Wenn jemand deinen Webserver kompromitiert, dann kommt er immer auch an einen nachgelagerten DB-Server.

Wenn der DB-Server nicht entsprechend gesichert ist, kann auch über eine simple SQL-Injection großer Schaden entstehen. Eine Verschlüsselung der Verbindung zwischen den Server bringt hier garnichts.

Es kommt ein wenig darauf an, welche Daten der DB-Server bereit hält, und inwiefern diese im internen LAN benötigt werden. Eventuell bietet sich auch eine Replikation zu einem (neuen) DB-Server in der DMZ und dem internen Lan an.

😃

Xynratron

30.01.2011 - 22:29 Uhr

huhu,

Subdomain anpingen geht nicht. Findet den Host nicht.

Dann kann der IIS leider garnichts dafür. Du hast keinen DNS-Eintrag für die (Sub)-Domain. Hier kann Dir aber der ISP, bei dem der Server steht, bestimmt besser helfen. Ich kenne das Webfrontend von denen leider nicht.

Ob Du einen Root-Server hat spielt hierbei keine Rolle, denn das bezieht sich im Normalfall nur auf die Idee, einen eigenen Server mit "root"-Zugang zu haben. DNS regeln im Normalfall die DNS-Server vom ISP. Die Webserver Edition vom 2008er müsste auch Hostheader können.

😃

Xynratron

27.01.2011 - 14:22 Uhr

huhu,

ich kann dein Problem jetzt nicht ganz nachvollziehen, aber hier gibts ein Addin für Visual Studio, dass dir das ändern der Build-Version abnimmt.

😃

xynratron

27.01.2011 - 13:59 Uhr

huhu,

liegt wohl eher am Thema.

Ich hab mir mal schnell die Parameter von mstest.exe angesehen
Testcontainer unterstützt nur eine dll. Was Du willst ist eher eine Testliste mit mehreren zu testenden dlls.

Hoffe das hilft dir erstmal weiter^^

😃

Xynratron

27.01.2011 - 13:49 Uhr

huhu,

so wie ich das verstehe kannst du die Threads nicht abbrechen, weil intern z.B. eine SQL-Abfrage durchgeführt wird - sieh Dir hierfür doch mal die Begin/End-Methoden von SqlCommand an.

Dass deine Listview nicht immer die aktuellen Ergebnisse bekommt liegt einfach daran, dass deine Threads nicht "hintereinander", so wie erstellt, ablaufen, sondern dass die "speziellere" Abfrage durchaus schneller sein kann. Das bedeutet:

Suche "M" -> Thread1 startet
Suche "ME" -> Thread2 startet
Thread2 Beendet -> Listbox aktualisieren
Thread1 beendet -> Listbox aktualisieren

das es in den meisten Fällen richtig ist, liegt eher daran, dass die Abfrage schneller ist, als der Benutzer einen neuen Buchstaben tippt.

Wie synchronisierst du denn die Threads?

Ich würde das ganze so abhandeln, dass immer nur das Ergebnis des leztten gestarteten Threads als gültiges Ergebnis für die Listbox betrachtet wird.

😃

Xynratron