Laden...
T
Tom myCSharp.de - Member
Datawarehouse Architect / Business Intelligence Specialist Home is where my notebook is Dabei seit 16.06.2006 433 Beiträge

Forenbeiträge von Tom Ingesamt 433 Beiträge

23.04.2007 - 20:01 Uhr

Du könntest auch per copy deine DLL beim Post-Build event von VS.NET ins Verzeichnis deiner Wahl kopieren.

Unter VS.NET 2005 Pro:

Project -> Properties -> Build-Events -> Post-build event

Gruß,
Tom

23.04.2007 - 18:34 Uhr

Klasse Thread!

23.04.2007 - 18:31 Uhr

Wir benutzen Skype bei uns in der Firma und sind sehr angetan. (Chat & Telefonie)

Qualität ist immer super, hab aber kA was für eine Leitung wir genau haben.
Ich denk mal >100MBit.

Ich finds supi, in anderen Foren liest man das Skype ein Sicherheitsrisiko darstellt, da es sich ziemlich schlecht von einer Firewall/Proxy blocken lässt.

Da habe ich bei uns aber keinerlei Bedenken, da Dateien nur per VPN bzw. gesicherte Verbindungen versendet werden.

Gruß,
Tom

20.04.2007 - 17:03 Uhr

Der Fehler wird geschmissen wenn eine Verbindung mit einen non-trusted Zertifikat geschieht.
Du kannst auch dementsprechend darauf reagieren (annehmen, ablehnen);

Siehe z.B. auch:
https-Verbindungen in C#

Wenn du in CheckValidationResult einfach return true angibst, werden alle Zertifikate akzeptiert.

Gruß,
Tom

20.04.2007 - 15:59 Uhr

Hallo Golo,
wie hast du den Kontakt zu Schweizer Firmen herstellen können?
Hast du Presse, Internetseiten, etc. abgegrast?

Mich würde deine Erfahrung in diesem Bereich sehr interessieren.

Gruß,
Tom

17.04.2007 - 20:18 Uhr

Komplett in Englisch.
OS, VS, Office, MSDN, SQL, Code, Kommentare, Doku, Keyboard ... alles Englisch 😉

Arbeite für einen Global Player, einige meiner Kollegen können nur Englisch, daher alles einheitlich.
Man kann es sich bei uns aber auch aussuchen welche Sprache man bei OS/VS/Office/SQL nutzen will, aber Code, Kommentare und Doku muss in Englisch sein.

Gruß,
Tom

17.04.2007 - 17:18 Uhr

Laufen die Queries des 2005er case-sensitive?

Der 2000er hat dies nicht getan.

Gruß,
Tom

16.04.2007 - 20:11 Uhr

Am flexibelsten bist du mit einer seperaten Tabelle.
Würde ich dann immer machen wenn ich mir nicht 100% sicher bin wie das gesamte Konstrukt wächst.

Gruß,
Tom

16.04.2007 - 18:12 Uhr

Hi,

hört sich nach nicht wirklich vielen Einträgen an.
Ich würde dann eher zu einer zusätzlichen Tabelle greifen.

Und ein JOIN ist nem SQL Server sowas von Schnuppe 😉

Gruß,
Tom

16.04.2007 - 18:09 Uhr

Original von SenSe
Bitte löschen,
hat anscheinend niemand Ahnung davon!
Danke trotzdem

Stimmt ich habe keine Ahnung davon.

Aber unter
http://www.google.com/search?hl=de&q=wmi+iis
gibt es sehr gute Infos zum auslesen von IIS.

Und unter
http://www.google.com/search?hl=de&q=wmi+dns
gibt es sehr gute Infos zum auslesen von DNS.

Und das ist gar nicht so ironisch gemeint, wie es rüber kommt 🙂

Gruß,
Tom

15.04.2007 - 21:44 Uhr

Ähm ...

Wie gross sind den die Daten?
Weil so ne OutOfMemoryException ist schnell geschmissen.

Wenns nur ein paar kB/MB sind kannst die schon komplett einlesen.
Wenn du es aber nicht einschätzen kannst, musst du die Schrittweise lesen.

Und an der Grösse musst du selber schrauben. Normalerweise ist es egal wie gross du den Buffer wählst.
Nur bei sehr zeitnahen Sachen musst du schauen wie du mit den empfangen Daten umgehst. Ich nehm oft 32kB.
Kannst ja mal mit unterschiedlichen Buffer Grössen ausprobieren und die Zeit messen.

Bei Standard Sachen dürfte da wohl kein grosser Unterschied sein.

Gruß,
Tom

15.04.2007 - 21:35 Uhr

Hi,

in einer relationalen datenbank sind relational abgelegte daten das performanteste, was du machen kannst, zumal wenn es nur kleine informationseinheiten wie integers sind.

Das kann ich so nicht wirklich bestätigen. Es kommt sehr auf den Anwendungsfall drauf an, in wie weit man normalisieren sollte.
Gibt es viele/wenige Attribute/Relationen. Datenaufkommen, vernünftige Serverresourcen etc? Wie oft werden diese Daten abgefragt usw usf.

Aber im Normalfall gebe ich dir schon recht.
Ich denk mal hier im Forum würde es für 99% der Fälle stimmen 🙂

Probleme die du z.B. bei MSSQL hast:

  • die IN Klausel kann nur maximal 255 Parameter verarbeiten
  • die normalen Textfelder können maximal 8000 (VARCHAR) bzw. 4000 (NVARCHAR) Zeichen beinhalten
  • BLOB wie (TEXT) können nicht so ohne weiteres durchsucht werden

Wieviele Integers willst du den abspeichern?
Willst/musst du auch nach diesen Suchen können?

Gruß,
Tom

14.04.2007 - 00:51 Uhr

Hi,
ja erst einmal nimmst du dafür HttpWebRequest. Da kannst du auch NetworkCredentials mitschicken.
Und SSL macht das Ding automatisch wenn du eine https:// Adresse angibst.
Da einzigste was du beachten musst, ist das wenn das Zertifikat ungültig ist (z.B. keine offizielle CA) der Request ein Fehler schmeisst.

Dann benötigst du ServicePointManager.ServerCertificateValidationCallback:


// Add policy to accept all (also non-trusted) X509 certs (like SSL)
ServicePointManager.ServerCertificateValidationCallback += delegate
{ return true; };

Das würde z.B. alle Zertifikate annehmen, egal ob gültig oder nicht. Du kannst im Callback auch Überprüfungen vornehmen und z.B. eine Bestätigung vom User einholen etc.

Das ganze läuft Applikationsweit und muss nicht pro Request gemacht werden.

Gruß,
Tom

12.04.2007 - 14:57 Uhr

Wir hatten früher Testweise Ankh benutzt und waren damit gar nicht zufrieden.
VS reagierte im allgemeinen langsamer. Wie z.B. beim starten, beenden, Dateizugriffe etc.

Das Add-In ist leider auch des öfteren abgeschmiert. (Hatten es vor ca. 1,5-2 Jahren getestet)

Den Verdacht mit den nicht aktualisieren der Dateien etc. hatten wir auch.
Von daher hatten wir uns nur für TortoiseSVN, bzw. einige hatten noch zusätzlich SmartSVN genutzt, entschieden.

Evtl liegt es auch an der Grösse der Solution (damals ~30 Projekte) oder an der Anbindung zum SVN Server (war aber im LAN und eine gute Maschine).

Gruß,
Tom

11.04.2007 - 21:06 Uhr

Das mit der Framework Version hatte ich überlesen.

Ich habe es jetzt auch noch einmal getestet, weder mit Icon.ExtractAssociatedIcon noch mit der alten Methode SHGetFileInfo kommt man an die 'bearbeiteten' Icons.

Vielleicht gibt es ja die Möglichkeit über eine DLL von Tortoise zu gehen?

Edit:
Also ich weiss nicht wie Tortoise das macht.
Theoretisch müsste man über die Shell32 Funktion SHGetFileInfo an alles rankommen was Windows kennt.
Aber es scheint so das sich Tortoise da 'vorbeischmuggelt', da ich kein Icon mit den Tortoise Sachen bekomme (auch die Overlay Flags bringen nicht das gewünschte Icon).

Du könntest ja mal auf der Dev Mailinglist von Tortoise mal nachfragen ob dir da jemand behilflich sein könnte.

Gruß,
Tom

11.04.2007 - 16:02 Uhr

Hi,
schau dir mal
IconIndex in der Registry
Icon.ExtractAssociatedIcon Method
an.

Wenn du über die ImageList gehst, vergiss aber nicht die Farbtiefe auf 32Bit umzustellen.

Gruß,
Tom

10.04.2007 - 09:24 Uhr

Hallo Sense,

Ich möchte mittels C# DNS und IIS einträge auslesen und einfügen können.

Ehrlich gesagt versteht ich deine Frage nicht.
Was möchtest du machen? Was für DNS und IIS Einträge möchtest du aus-/einlesen?

Gruß,
Tom

01.04.2007 - 23:18 Uhr

Setz einfach alle Spaltenbezeichnungen in [] dann hast du damit keine Probleme mehr.

Gruß,
Tom

26.03.2007 - 20:07 Uhr

Jetzt klickt doch nicht alle gleichzeitig!

Jeder kriegt eine Uhr! 😁

26.03.2007 - 19:59 Uhr

Die Seite scheint teilweise sehr, sehr langsam zu sein.

Generell läuft die Seite bei mir einwandfrei (FF)

26.03.2007 - 19:27 Uhr

Schau doch mal auf http://www.tokyoflash.com, die haben für meinen Geschmack die geekigsten Uhren 😉

22.03.2007 - 09:22 Uhr

Mit 'Steffi' verbinde ich leider eine sehr schrille quietschige Stimme 😭

Viel Spass noch weiterhin!

Gruß,
Tom

21.03.2007 - 22:59 Uhr

Läuft bei mir unter Vista.

  • Die neuen Controls find ich richtig chic.
  • Qualität der Sprachausgabe ist grauenhaft
    Ich nutze aber die englische Version von Vista, evtl klingt es im deutschen ja besser
  • Es ändert sich alles schön dynamisch (Wie man es von WPF gewohnt ist 😉)

Guter Ansatz!

Gruß,
Tom

18.03.2007 - 13:30 Uhr

Hi,

nur mal eine Randbemerkung weil ich lese das es Probleme mit Windows Vista gibt.

Outlook Express wurde unter Vista entfernt wird auch nicht mehr supportet.
Anstatt dessen gibt es Windows Mail.

Vielleicht liegt es ja daran.

Gruß,
Tom

17.03.2007 - 07:40 Uhr

Hi,

Vielleicht hilft der Knowledgebase Artikel How to enable SMTP Authentication using System.Web.Mail als Einstieg.

Wenn nicht, dann halt einfach vorher eine POP Verbindung aufbauen und dann anschliessend die Mail per SMTP versenden.
Mehr ist es ja nicht.

Gruß,
Tom

15.03.2007 - 07:52 Uhr

Die Fehlermeldung besagt das er dein normalen IComparer nicht kennt.
Das Interface befindet sich aber in System.Collections.

Dein Compiler kennt gerade nur IComparer<T>, aber keine Ahnung wieso.
Weil das Interface wiederrum nur in System.Collections.Generics liegt.

Der Code sollte eigentlich funktionieren (ist ja auch das Beispiel aus der MSDN).

Sorry wenn ich nicht mehr weiterhelfen kann.

Gruß,
Tom

14.03.2007 - 12:56 Uhr

Wie BerndFfm schon festgestellt hat fehlt in deinem Originalcode


using System.Collections;

Du hast nur das System.Collections.Generics eingebunden, aber in diesem Namespace gibts nur IComparer<T>.

Gruß,
Tom

13.03.2007 - 23:50 Uhr

Hi,

Ich würde auf keinen Fall Daten lokal zwischenspeichern und dann wieder synchronisieren. Ausser du willst die Daten rein zur Anzeige nutzen.

Weil sonst wirst du dir da ganz schön was aufhalsen mit dem synchronisieren.

Ich sehe da folgende Probleme:

  • Datensatz mit gleichem Inhalt wurde zwischenzeitlich erfasst
  • Datensatz wurde modifiziert
  • Datensatz wurde gelöscht

Diese Konflikte kannst du nur begrenzt durch Regeln auflösen, zu oft ist menschliches Verständnis notwendig.

Ich habe schon einmal eine Webapplikation für Lagerbuchungen in einer Fertigungshalle geschrieben. Das ganze lief per Barcode System.
Da wurde aber vom Systemhaus die komplette Halle mit Wlan abgedeckt. Da hatten wir am Anfang auch zuerst einige Probleme.

Ich würde im Hintergrund mit einem Webservice arbeiten.
Wenn keine Verbindung zu Stande kommt, kannst du den Benutzer ja informieren das er sich ausserhalb der Wlan Abdeckung befindet und er sich Richtung Hotspot bewegen soll. Anschliessend kann er es manuell noch einmal probieren.

Gruß,
Tom

06.03.2007 - 18:18 Uhr

Irgendwie komm ich da gerade nicht drauf wie es laufen sollte ... sorry.

Wenns überhaupt nicht klappt dann halt wie Elric schreibt mit nen UNION oder halt nen Subselect.

Gruß,
Tom

06.03.2007 - 16:12 Uhr

Hi,
habs gerade noch einmal ausprobiert, schmeisst tatsächlich ein Fehler.

Arbeite mal nur mit dem Wildcard, da sich die Aggregation eh durch die Group By Klausel richtig auflöst.

Also
COUNT(*)

Gruß,
Tom

06.03.2007 - 14:43 Uhr

Hi,

du müsstest eigentlich auch mit COUNT(B.*) arbeiten können.

Mir ist noch nie aufgefallen das COUNT nicht mit uniqueidentifier arbeitet.

Gruß,
Tom

06.03.2007 - 14:42 Uhr

Das ist eine Einstellung am Client, und ich habe bisher keine Möglichkeit gefunden diese zu deaktivieren.
Hatte aber das letzte mal intensiv vor paar Jahren mal nachgeforscht.

Im IE7 hat Mircosoft das Klickgeräusch auch wieder entfernt. Die haben wohl eingesehen, dass das bei den Benutzern nicht so gut ankommt.

Gruß,
Tom

16.02.2007 - 18:21 Uhr

Weiss jetzt nicht ob du mich so richtig verstanden hast.

Also normalerweise schreibt ein unbedarfter Mensch (😉) entweder Umlaute oder er schreibt sie halt aus.
Soll heissen ein Datensatz wird denke ich mal nicht gemischt sein, sollte dies dennoch der Fall sein musst du dir über die Implementation eines Phonetischen Algorithmus Gedanken machen.
Aber normalerweise würde ich behaupten das mein Denkansatz in deinem Falle reicht.

Gruß,
Tom

16.02.2007 - 12:10 Uhr

Du müsstest doch nur einen Parameter in 2 aufteilen.

Beispiel:
Suche nach 'Müüllär' (mir fällt kein Name mit mehreren Umlauten ein 😉)

Umwandeln in:
(Name = 'Müüllär' OR Name = 'Mueuellaer')

Weil es wird ja wohl nicht vorkommen das ü und ue gemischt sind in deinem Datenbestand.

Gruß,
Tom

13.02.2007 - 09:08 Uhr

Wenn du mit VS2003 arbeitest, programmierst du mit .NET 1.1.
Und nein, du kannst der IDE nicht beibringen 2.0 zu nutzen.

Wenn du .NET 2.0 nutzen möchtest, benötigst du VS2005.

Gruß,
Tom

10.02.2007 - 00:17 Uhr

Hi,
anstatt = ein LIKE

Siehe die Onlinedoku von T-SQL

Gruß,
Tom

07.02.2007 - 23:33 Uhr

Hi,
du kannst wie du schon geschrieben hast entweder über die Sprache der SQLConnection gehen. Diese nutzt wenn SET LANGUAGE nicht gesetzt wurde, die Spracheinstellung des Benutzers.
Oder du kannst auch den 'Invariant' T-SQL Datetime mittels 'yyyymmdd' Formats nutzen.
Siehe dazu auch Writing International Transact-SQL Statements aus der MSDN.

Hab leider kein SQL Server gerade parat um das zu testen, aber ich weiss das es einen Invariant Datetime Typen für T-SQL gibt, bloss dachte ich das der String mit nem Hash anfängt.

Naja, laut Microsoft sollte es ja so gehen.

Gruß,
Tom

06.02.2007 - 19:57 Uhr

Bei der CR Version die bei VS2003 mitgeliefert wurde, war eine Beschränkung auf 5 gleichzeitige Prozesse.
Aber kA wie das bei der aktuellen Version aussieht.

Gruß,
Tom

06.02.2007 - 19:55 Uhr

Meins kam heute als Päckchen an.

Gruß,
Tom

01.02.2007 - 18:00 Uhr

Nicht nur meistens, sondern immer 🙂

Gruß,
Tom

31.01.2007 - 18:05 Uhr

Die MSler Vorort meinten das es Tage/Wochen nach Verkaufsstart dauern kann bis man die bekommt, da dies eine spezielle 'Nicht zum Verkauf bestimmte' Version sein wird.

Die DVD Covers müssen ja dementsprechend gekennzeichnet sein ... schöner Aufkleber drauf und so .... das dauert seine Zeit 🙂

Ich sehe hier die Produkte auch nur als Goodies und hab keine Schmerzen damit wenns noch paar Wochen brauchen.

Gruß,
Tom

20.01.2007 - 15:36 Uhr

WF ist die offizielle Abkürzung von MS aus.
WWF wolltense erst nehmen, haben sich aber wegen aussichtslosen Rechtsstreitigkeiten mit WWF (World Wrestling Foundation) und der WWF (World Wide Fund For Nature) intern auf WF geeinigt.

Die Infos hab ich von nen MS Evangelist mit dem ich mich auf der Vista 'Ready for a new day' Tour unterhalten hatte.

Gruß,
Tom

11.01.2007 - 19:25 Uhr

Hi,
dein Problem wird sein das du zu erst .NET installiert hast und anschliessend den IIS.
Die .NET Installation legt erst das Benutzerkonto und alles andere notwendige an (ASP.NET)

Du kannst aber ASP.NET nachinstallieren indem du

%windir%\Microsoft.NET\Framework\v2.0.50727\aspnet_regiis.exe -i

in der Console ausführst (Start -> Ausführen).
Für andere Versionen des Frameworks eben Pfad anpassen.

Ich bin mir aber sicher das wurde hier schon des öfteren im Forum nachgefragt -> Forumsuche 😉

Gruß,
Tom

06.01.2007 - 13:25 Uhr

Hallo Revil,
das Thema wurde im Forum schon des öfteren besprochen.

Suche -> csc

z.B. 5. Ergebnis: Kompilieren mit csc

Gruß,
Tom

02.01.2007 - 21:20 Uhr

Bitte schön 🙂

02.01.2007 - 20:19 Uhr

Hallo Lothi,
du hast ne PN 🙂

Gruß,
Tom

02.01.2007 - 19:08 Uhr

Schon mal versucht .NET neu zu installieren?

Keine Ahnung was du dir zerschossen hast, aber normal darf beim alleinigen Aufruf von der csc.exe kein Fehler kommen. (Und schon gar nicht die Standard Meldung 'Keine Win32 Anwendung')

Gruß,
Tom

22.12.2006 - 00:22 Uhr

Hallo zusammen!

Weiss jetzt zwar selbst nicht wo solche für alle Benutzer gültigen Daten abelegt werden sollen, aber ich kann was zum Programme Ordner sagen.
Und zwar sollten dort wirklich nur die Programm Dateien liegen. Da man bei einer Windows Vista Standard Konfiguration Administrator Rechte benötigt um ins Programme Verzeichnis zu schreiben.

Deshalb gibt es in Vista dieses virtuellen Verzeichnise, dass den Applikationen, wenn sie keine Admin Rechte besitzen, vorgaukelt ins normale Programme Verzeichnis zu schreiben.

Das ganze Thema wurde in der Microsoft Roadshow "Ready for a new day" sehr anschaulich beschrieben.
Aber ich hab mich leider mit Vista noch nicht weiter auseinander gesetzt, deshalb kann ich zum Thema nur sehr oberflächlich beitragen.

Nächtlichen Gruß,
Tom

15.12.2006 - 23:50 Uhr

Hi Yeats,
dein Datum in

SELECT * FROM tab_Persönlich WHERE Datum like '13.11.2006'

wird zu '13.11.2006 00:00:00'.
Da die DB auf Sekunden runtergeht müssen die Werte in der Tabelle auch genau 13.11.2006 00:00:00 sein.

Solltest du wollen das alle Datensätze mit dem Tag 13.11. angezeigt wird, ohne auf die Uhrzeit zu achten, musst du das ganze so angehen:

SELECT * FROM tab_Persönlich WHERE Datum BETWEEN '13.11.2006' AND DATEADD(d, 1, '13.11.2006')

Aber du solltest wegen der möglichen Gefahr einer SQL Injection DBCommands mit Parametern nutzen.
Wenn du hier im Forum suchst, wirst du bestimmt fündig.

Gruß,
Tom