Dann musst du versuchen, dich mit der Systemdatenbank des DBMS zu verbinden.
Scheitert das, gibt es kein DBMS (bzw. keine Verbindung). Dort kannst du dann die Systemtabelle abfragen, in der alle vorhandenen Datenbanken aufgelistet sind.
Der Preis um dieserart 1/8 des Speichers zu sparen beträgt mindesten eine Verzehnfachung der Latenzzeit und eine deutliche Verringerung des Durchsatz.
Das ist kontraproduktiv, da Rechenzeit teurer als Speicherplatz ist.
Speicher einfach ein Byte (eventuell in einen eigenen Datentyp mit Wertebereichsprüfung verpackt) und gut ist.
Speziell:
Im Designer für .NET 2.0 werden zwei Dateien pro Form erzeugt. Eine mit generiertem Code, die andere mit dem benutzerspezifizierten.
Ermöglicht wird dies durch das neue 2.0er Feature der partial class, wodurch sich eine Klassendefinition über mehrere Dateien verteilen lässt.
Um dies zu nutzen, muss der partial-Modifizierer in jeder Datei vor der betreffenden Klasse aufgeführt werden.
Vermutlich hast du den vom Designer erzeugten Code verändert und den Modifizierer dabei entfernt. Füge ihn einfach zwischen public und class wieder ein.
Nicht per Default, da Windows die Threads eines Prozesses (korrekterweise) zusammenhält.
Deswegen bringt MultiCore (oder SMP) auch nur etwas, wenn die Anwendung mitspielt.
Siehe Thread auf einem bestimmten Core/Kern laufen lassen
Das Problem bei dieser Klasse ist, dass sie nicht zum Arbeiten auf einem FTP-Server gedacht ist, sondern nur zum schnellen Hoch- und Runterladen von Dateien.
Wenn du mehr Komfort möchtest, musst du das FTP selbst implementieren.
oder dich nach einer alternativen Klasse umschauen.
Schon mal probiert den angegebenen XML-Schnipsel in eine Datei mit dem gleichen Namen wie dein Executable und einem ".manifest" angehangen ins gleiche Verzeichnis zu packen?
Genau das steht dort nämlich, unabhängig von VB oder C#.
Ich weiß nicht genau, was du mit Ereignis meinst. Falls du auf eines der Events der Klassen in System.Forms anspielst: ein Dienst hat kein UI und daher greifen auch die Klassen nicht.
Benutze bmp.Width und bmp.Height anstelle der Konstanten 16 sowie Spalte und Zeile oder x und y anstelle von i und j und diese und ähnliche Fehler werden ausgeschlossen oder erschwert...
PS.: Man nenne mir einen Satz mit fünf "und"!
Malt der Malergeselle ein Schild für den Obst und Gemüse Laden und zeigt es zur Abnahme dem Meister. Dessen Kommentar: "Schon nicht übel, aber zwischen Obst und und und und und Gemüse musst du noch mehr Platz lassen!"
Das geht relativ problemlos.
Nur ist es nicht nötig, da du per WMI auch andere Rechner abfragen kannst (solange du die passenden Rechte hast, wovon ich in einem AD eigentlich ausgehe).
Trenne Kapitel von Unterkapitel.
Bei der Eingabe einfach am Punkt aufteilen und in zwei verschiedene Spalten. Dann kannst du numerisch nach den Spalten sortieren.
Von 2000 als Obergrenze war auch nie die Rede. Im Protected-Mode des x86-Designes hat das TaskSelector-Register eine Breite von 32Bit. Damit könnte es theoretisch rund 4 Milliarden hardware-gestützte Tasks geben.
Wenn man das ganze per Software macht (wie Win32), ist man prinzipiell in der Anzahl der Tasks unbeschränkt.
Die einzige effektive Einschränkung, die auch auf der oben verlinkten Seite angegeben ist, stellt damit der Speicherplatz dar (jeder Thread bekommt ja einen eigenen Stack). Ein 32Bit Programm nutzt unter Windows per Default 2GB virtuellen Adressraum, möglich sind auch 3GB. Da der Speicherplatz von Windows in 64KB-Blöcken vergeben wird, ergibt sich ein theoretisches Maximum für das Win32-System von 2GB / 64KB (bzw. 3GB / 64KB) und damit 32.768 (bzw. 49.152) Threads.
Allerdings läuft bei einer Anwendung, die mehr als hundert Threads pro Prozessor unterhält, mit Sicherheit etwas schief.
Ein paar Dutzend sind aber kein Problem. Solange sichergestellt ist, dass die Anwendung nicht immer neue Threads aufmacht... Aber dazu gibt es ja den ThreadPool.
Ein Event wird nicht verpennt. Das nächste Mal, wenn der Thread aktiviert wird, wird das Event ausgelöst.
EDIT:
Zitat
ein knappes Duzend Threads
schalte mal im Taskmanager die Spalten Handles und Threads sichtbar und starte ein Programm, dass auch nur unwesentlich umfangreicher als MineSweeper ist...
Es ist auch möglich, dass benötigte andere Dienste (wie z.Bsp. das Ereignisprotokoll oder der RPC-Server) noch nicht gestartet wurden. Du müsstest dann in deinem Dienst angeben, dass er von diesen Diensten abhängig ist, damit er erst danach gestartet wird (ServiceInstaller.ServicesDependedOn).
You can set Method to any command recognized by the server and use the FtpWebRequest object to send the command. This works as expected only if the command does not require you to send data and the server does not send data in response to the request.
Das Problem bei dieser Klasse ist, dass sie nicht zum Arbeiten auf einem FTP-Server gedacht ist, sondern nur zum schnellen Hoch- und Runterladen von Dateien.
Wenn du mehr Komfort möchtest, musst du das FTP selbst implementieren.
Innerhalb der x86-FPU werden alle Zahlen in einem Format mit 80 Bit gespeichert (Extended unter Turbo Pascal). Ausschließlich beim Laden oder Speichern von Werten werden diese in das angegebene Format (Single oder Double) gewandelt.
Intern wird in der FPU immer in diesem Format gerechnet. Daher können nur erste langwierige Operationen unterschiedlich lange dauern, da bei Wandlung von Single nach Extended mehr Bits null sind (und evtl. nicht berechnet werden müssten), als bei Wandlung von Double nach Extended. Nach dieser Berechnung enthält das interne FPU-Register die gleiche Bitfolge (abgesehen von Rundungsfehlern) und alle folgenden Berechnungen dauern wieder gleich lang.
Insofern ist es blödsinnig zu behaupten, dass eines der beiden Formate schneller ist als das andere. Der einzige Grund, warum zur Visualisierung Single verwendet wird, liegt wirklich in der ausreichenden Genauigkeit und in den SIMD-Fähigkeiten moderner C-/G-PUs.
Wer sich darüber genauer informieren möchte, soll sich bitte folgende Wikipedia-Artikel durchlesen: Gleitkommazahl IEEE 754
Ich habe die Klasse zwar noch nie zum Umbenennen benutzt, aber ich vermute mal, du musst einen neuen Request mit dem alten Dateinamen erzeugen, die Methode auf Rename setzen, das Property RenameTo auf den neuen Namen setzen und dann per GetResponse ausführen...
Mit auf "Byte basiert" meinte ich natürlich nicht Vererbung sondern Aggregation in einen eigenen Datentyp, der dann auch eigene Operatoren und implizite und explizite Konvertierungen definiert.
Zuerst mit System.Security.Cryptography.SHA512Managed.ComputeHash das Passwort hashen, dann mittels System.Security.Cryptographie.ProtectedData.Protect den Hash verschlüsseln und anschließend per IsolatedStorage speichern.
@Armitage: Das ist doch wohl ein Witz. Den Post hättest du dir wirklich sparen können.
Stimme meinen Vorrednern soweit zu, daher hier nur Add-Ons: 1. Das es wie ein englisches Buch geschrieben ist. Ich finde den Schreibstil vieler deutscher Autoren knochentrocken. Es klingt immer so, als wenn sie gerade eine Enzyklopädie schreiben würden. Das macht ein Buch, das man durchlesen und -arbeiten soll sehr mühsam. 2. Wie meine Vorredner, allerdings möchte ich deutlicher auf den Code zu sprechen kommen. Ich finde es sehr wichtig, dass der Code wie aus einem Guss wirkt. Und da die Programmiersprache unabänderbar englisch ist, sollte sich der eigene Code auch daran orientieren (sprich: alles englisch). 3. Habe zwar noch nie ein Add-In für VS programmiert, aber wie dr4g0n76 ansprach, kann es viele Probleme geben. Um schnell die Lösung zu einem konkreten Problem zu finden, ist eventuell ein eigenes Kapitel als schnelle Referenz derartiger Probleme empfehlenswert.
Der Grund liegt aber eher darin, dass Single mit 23Bit Genauigkeit für die Visualisierung ausreichend genau ist (Positionierung auf ca. ein Achtmillionstel möglich).
Desweiteren kann man per SIMD (SSE, 3Dnow, Altivec) gleich vier Single-Werte auf einmal verarbeiten, d.h. einen ganzen Vektor pro Befehl, was 3D-Grafik erst möglich macht. Die GPU setzt daher auch auf single.
Nur für wissenschaftliche Berechnung (bzw. Berechnungen, die nicht ausschließlich der Visualisierung dienen) nutzt man ein Format mit höherer Genauigkeit (52Bit), also Double.
Und ausschließlich für kaufmännische Berechnungen, die ja immer im Dezimalsystem stattfinden, benutzt man Decimal (Orientierung an COBOL). Dieses wird per Software im BCD-Format berechnet und kennt daher nicht das Problem, dass es (Dezimal-)Zahlen gibt, die nicht ohne Verlust in eine binäre Darstellung umgewandelt werden können. Rundungsfehler gibt es beim Rechnen in diesem Format trotzdem, nur keine Umwandlungsfehler mehr.
Die Dateiinfos werden in benutzerdefinierten Attributen des MFT-Eintrags der Datei gespeichert. Damit ist das ganze eine NTFS-Spezialität und daher nicht im Framework reflektiert.
Zur Nutzung musst du daher wohl aufs WinAPI ausweichen (bzw. wahrscheinlich gibt es ein COM dafür).