Suchergebnisse

Suchergebnisse 1-30 von insgesamt 773.

  • Benutzer-Avatarbild

    Da ist bei der Installation etwas schief geleaufen. Neu installieren sollte das Problem beheben. Siehe: social.msdn.microsoft.com/Foru…forum=visualstudiogeneral

  • Benutzer-Avatarbild

    Ich bau nicht von jedem der ein Problem hat die Applikation nach. Wenn man Hilfe will, dann muss man den Hilfsbereiten auch etwas entgegenkommen. Und den Code brauch ich durchaus, da ich ohne Code kann ich dir nicht sagen ob es ein allgemeines Problem oder ein Problem von deinem Code ist. Ich weiß nicht ob du das Fehlverhalten nicht selbst aus löst oder ob du unabsichtlich Werte gesetzt hast, die nicht gesetzt werden sollen. Wenn das Thema erledigt ist, bitte auch als erledigt markieren.

  • Benutzer-Avatarbild

    Poste doch erst mal etwas Code. Ohne Code kann dir niemand sagen warum sich dein Programm so verhält

  • Benutzer-Avatarbild

    Eigener ASCII Code

    BiedermannS - - Sonstige Problemstellungen

    Beitrag

    Erst mal: ASCII ist ein Standard. Du kannst also keinen neuen ASCII Code für Buchstaben erstellen. Was du willst ist eine Zuordnung von Char zu Integer. Mach dir ein Dictionary(of Char, Integer) mit allen werten, iteriere über deinen Text und hol dir die Daten aus dem Dictionary. Das Ganze mit StringBuilder zu einem String zusammensetzen und fertig.

  • Benutzer-Avatarbild

    Wenn man so viel wie möglich von etwas braucht, ist eine der einfachsten Architekturen eine fixe Anzahl an Threads zu erstellen welche sich aus einer Queue Arbeit abholen. Um die perfekte Anzahl der Threads herauszufinden, muss man eventuell etwas herumspielen. Das hängt nämlich von mehreren Sachen ab (z.B.: Was ausgeführt werden soll). In irgendeinem Whitepaper hab ich mal gelesen dass Anzahl der CPUs * 2 + 1 ein guter Wert für die maximale Anzahl an Threads sein soll, da sonst die Thread Conge…

  • Benutzer-Avatarbild

    Hey bin grad nur am Handy online, darum kann ich nur ein paar Anhaltspunkte schreiben. Grundsatzlich musst du die exe zuerst entpacken. Je nachdem welche Art von exe das ist (nativ oder .NET) Bzw. Welche Abhängigkeit diese hat, kannst du das ganze eventuell in memory machen. also schritt 1 in Memory entpacken. schritt 2 exe aus dem Memory heraus ausführen. die Umsetzung der einzelnen schritte sollten recht einfach herauszufinden sein, danach brauchst du das nur noch zusammenführen.

  • Benutzer-Avatarbild

    Das hilft grad nicht wirklich weiter. Was soll das Programm denn machen wenn es fertig ist?

  • Benutzer-Avatarbild

    Was willst du damit denn bezwecken? Vielleicht lässt sich das Ganze ja anders lösen. Zum Random String generieren gibts zwei Möglichkeiten. 1) Du erstellst eine Liste mit allen Buchstaben und holst dir in einer Schleife mit rnd.Next(list.Count) den Index für den nächsten Buchstaben. Danach nimmst du diesen Buchstaben und fügst ihn an das Ergenis hinten an 2) Du holst dir in einer Schleife mit rnd.Next einen Wert zwischen dem Integer Wert des Startbuchstaben und dem Integer Wert des Endbuchstaben…

  • Benutzer-Avatarbild

    Poste mal den Code den bereits hast.

  • Benutzer-Avatarbild

    Ich bin mir grad nicht sicher was die Problemstellung ist. Willst du Ordner mit zufälligen Namen erzeugen? Oder Dateien? Oder nur Texte? Und was meinst du mit "ein Ordner mit 20 Namen"? Ein Ordner kann nur einen Namen haben.

  • Benutzer-Avatarbild

    Ich meinte Verschachtelte Iteratoren

  • Benutzer-Avatarbild

    Ja ist Gewöhnungssache. Bei kleineren Code Beispielen sind die Extension Methods definitiv schöner Ich hab grad den IL angesehen und etwas recherchiert. Unterschiede zwischen LINQ und Iterator:- Iterator werden vom Compiler zu einer Statemachine umgewandelt - LINQ verwendet hingegen einen interne IEnumerable Klasse - LINQ hat (in diesem Beispiel) eine Allozierung mehr als der Iterator - LINQ läuft langsamer als der Iterator Anscheinend wird die generierte Statemachine besser optimiert als das ge…

  • Benutzer-Avatarbild

    Klar gibt es die und iterator sind auch ein tolles Konzept. Aber ich bin mittlerweile ein riesen Fan von Code der Ausdrückt was passieren soll und nicht wie. Das größte Problem mit Schleifen und iteratoren ist, dass ich mir die Implementierung ansehen muss um zu verstehen was passiert. Das kostet Zeit und es macht es einfacher einen Bug einzubauen. Im Endeffekt muss man sowieso anhand der Problemstellung entscheiden was besser ist, aber grundsätzlich sollte man die höchste Abstraktion die zur Ve…

  • Benutzer-Avatarbild

    Zitat von jvbsl: „Du hast die Behauptung aufgestellt, dass LinQ performanter sei“ *sein kann. Ich hab nur gesagt dass ich Code habe, der mit Linq besser performt, nicht dass jeder Code mit Linq besser performt. Zitat von jvbsl: „Ich denke sonst ist das Ergebnis nicht ganz fair, da wenn ich das richtig gesehen habe der LinQ teil erst in Zeile 92 evaluated wird“ Richtig. Wenn man das Query zu einer Liste forced ist es gleich schnell wie die For Methode. Aber da man im vorhinein nicht immer weiß, w…

  • Benutzer-Avatarbild

    Zitat von ErfinderDesRades: „Aber leider ein Zusatz ohne zusätzliche Information/Argumentation. Dass man gut verständlichen und wartbaren Code schreiben soll, ist ja längst Konsens.“ Dass man keine Goto's mehr verwendet auch. Zitat von jvbsl: „Jeder LinQ Code lässt sich anders und performanter programmieren“ Man kann auch alles in Assembly programmieren. Da kann man noch bessere Optimierungen vornehmen. Zitat von jvbsl: „Und für die Behauptung du hast den Unterschied getestet und LinQ war schnel…

  • Benutzer-Avatarbild

    Also ich hab hier grad einen Test gemacht. Einmal mit zwei for loops und einmal mit LINQ. Die LINQ Version ist nicht nur etwas schneller, sonder drückt auch genauer aus was passieren soll, anstatt wie es passieren soll. Also würde ich mal behaupten dass es sehr wohl optimiert wird. Soweit ich weiß ist LINQ lazy. Dadurch kannst du mehrere Filter zusammenhängen, ohne dass sich das zu sehr auf die Performance auswirkt.

  • Benutzer-Avatarbild

    @jvbsl zu 2.: Der C# Compiler ist schon ziemlich gut im optimieren. zu 3.: Das glaube ich kaum. Man kann auch gut leserliche Algorithmen schreiben die trotzdem schnell genug sind. Zitat von ErfinderDesRades: „und noch 'ne Umdrehung...“ Das war keine Umdrehung sondern ein Zusatz. Von den beiden Code Snippets die du gepostet hast ist keines wirklich zu bevorzugen, aber ohne zu wissen was das Ergbnis der Schleifen sein soll, kann ich dir hier leider keinen besseren Algorithmus präsentieren. Viellei…

  • Benutzer-Avatarbild

    Unter den ersten Einträgen auf Google. u.arizona.edu/~rubinson/copyri…o_Considered_Harmful.html Als Programmierer solltest du Code schreiben der gut verständlich und wartbar ist und nicht einfach nur funktioniert

  • Benutzer-Avatarbild

    Zitat von jvbsl: „Das hat nichts mit dem Datenmodell zu tun, es gibt genügend Algorithmen wo soetwas nötig ist.“ Du kannst grundsätzlich immer zuerst deine Daten filtern und danach mit den gefilterten Ergebnissen arbeiten. Manchmal ist es dafür halt notwendig das Datenmodell zu verbessern. Goto sollte definitiv nicht mehr verwendet werden. Dass der Compiler das aus Optimierungsgründen macht ist mir bewusst. Und dass alle If und Switch statements zu Jumps kompiliert werden ist mir auch bewusst, a…

  • Benutzer-Avatarbild

    Zitat von xChRoNiKx: „Ich denke hier wäre dann auch ein goto kürzer und eleganter“ Anstatt eines Goto wäre hier ehere eine besseres Datenmodell angebracht welches sich leicht filtern lässt. Dann hast du keine Schleifen mehr und brauchst weder mehrere Breaks, noch Goto. Goto sollte in der allgemeinen Applikationsprogrammierung nicht mehr verwendet bzw. empfohlen werden.

  • Benutzer-Avatarbild

    Normalerweise wenn man einen C-String von einer DLL bekommt, wird der char pointer als Parameter übergeben C-Quellcode (1 Zeile) In dem Fall muss ein StringBuilder übergeben werden, da ein String nicht schreibbar ist, StringBuilder allerdings schon. Der Marshaller kümmert sich dann um den Rest. Wenn der Rückgabe Wert ein char* ist, dann kannst du nur den Pointer nehmen und per hand konvertieren: VB.NET-Quellcode (29 Zeilen) Du solltest allerdings mal schauen ob es eine Methode zum freigeben des …

  • Benutzer-Avatarbild

    Ich weiß dass der Beitrag schon etwas älter ist, allerdings wollte ich hierzu noch eine neuere Methode vorstellen. Mit LINQ kann man ziemlich einfach alle Kombinationen einer List holen: VB.NET-Quellcode (5 Zeilen) Das Select(a, b, c) ist die neue Tuple Syntax (ab .NET 4.7). Frühere Versionen können new Tuple(of Integer, Integer, Integer)(a, b, c) verwenden. Hier noch ein paar Beispiele wie man Permutation ohne Wiederholung und Permutation von zwei unterschiedlichen Listen umsetzt. Inkl zwei Ext…

  • Benutzer-Avatarbild

    @Thias Klar, sind zwar nur ein paar kleine Änderungen und es ist nicht alles abgedeckt, aber du kannst es dir gerne ansehen. Ich hab den Fork davon eh in meinem Githup Repo: https://github.com/hardliner66/DataTransferProtocol Wo die Änderungen durchgeführt worden sind, kannst du in der Commit History nachsehen und wenn du Fragen hast, sag Bescheid.

  • Benutzer-Avatarbild

    Darum hab ich auch geschrieben, dass es dadurch nicht leichter verständlich ist. War auch mehr ein Proof-of-concept, um zu sehen ob es möglich ist. Hab mich schon lange nicht mehr mit dynamic auseinandergesetzt und hab das als "Übung" genommen. Zitat von VincentTB: „Ich verstehe auch nicht, wie man da etwas falsch machen kann.“ Hast du schon mal an größeren Projekten gearbeitet? Oder an Libraries? Dich mit Themen wie API-Design beschäftigt? Wenn ja, dann solltest du wissen wie leicht man etwas f…

  • Benutzer-Avatarbild

    Das kommt immer auf die Größe des Projekts an. Je größer und langlebiger das Ganze ist, umso sinnvoller ist es, ein wohldefinierte Schnittstelle zu haben. Eine Schnittstelle ist dann gut, wenn man sie leicht richtig verwenden und schwer bis gar nicht falsch verwenden kann. Aber da ich auch gerne herum bastle, hab ich den Code etwas erweitert um folgendes zu ermöglichen: Beim Server statt: Zitat von VincentTB: „C#-Quellcode (3 Zeilen)“ das: C#-Quellcode (3 Zeilen) Und beim Client, statt: Zitat vo…

  • Benutzer-Avatarbild

    Remote Calls sollten immer ein gut definiertes Interface haben. Das Problem hier ist, wenn du den RPC call öfter brauchst, musst du im Client einen eigenen Wrapper schreiben, damit du in Zukunft keine Tippfehler einbaust. In diesem Fall kann man es gleich über eine externe DLL lösen und hat somit das Problem nicht. Bei Remoting kann man dies über ein MarshalByRefObject lösen, wodurch sowohl Client als auch Server eine Instanz des Objects haben und auf die public Methoden des Objects zugreifen kö…

  • Benutzer-Avatarbild

    Zitat von Fakiz: „oder noch kürzer einfach VB.NET-Quellcode (1 Zeile)“ Das macht natürlich Sinn, ist allerdings das selbe wie die Schleife. Die Schleife geht dann raus, wenn zumindest 1 Adapter gefunden wird der eine Verbindung hat. Man kann Schleifen auch verwenden um zu überprüfen ob eine Bedingung auf nur eines der Elemente zutrifft. Also nochmal komplett ausgeschrieben: Die Schleife checkt ob irgendein Adapter eine Netzwerkverbindung hat. Wenn ja, wird das Result auf true gesetzt und ausgest…

  • Benutzer-Avatarbild

    Zitat von Fakiz: „macht so keinen Sinn“ Ich halte das für eine etwas übertriebene Wortwahl. Der Eventhandler ist eine gute Möglichkeit, wenn ich bei einem State Change sofort reagieren möchte, allerdings gibt es bei diesem Beispiel hier einige Probleme.1. Es gibt keinen Benefit für die Verständlichkeit des Codes. 2. Da ich nur alle 3 Sekunden wissen will ob überhaupt ein Adapter zur Verfügung steht, brauche ich nicht auf jeden State Change zu reagieren. 3. Eventhandler auf Netzwerkkarten können …

  • Benutzer-Avatarbild

    Du kannst auch in C++ andere Konstruktoren aufrufen und dann trotzdem seperate Codes ausführen: C-Quellcode (4 Zeilen) Du kannst einen privaten Basis Konstruktor erstellen, der die gemeinsame Funktionalität beinhaltet und beide Konstruktoren den Basis Konstruktor aufrufen lassen und danach im Body die Funktionalität abbilden, die sich unterscheidet.

  • Benutzer-Avatarbild

    Oder du verwendest einfach keinen Timer, sondern baust dir eine richtige Klasse die das ordentlich für dich erledigt: (Versteckter Text) Verwenden kannst du das ganze dann so: (Versteckter Text) Edit: Kleiner Nachtrag zu: Zitat von Cell: „Dieser Fehler wird ausgelöst weil er eine Prozedur wie eine Funktion behandelt.“ Ein Return heißt nicht, dass eine Methode wie eine Funktion behandelt wird. Man kann in VB.Net keine Methode wie eine Funktion behandeln (zumindest nicht durch Standard Syntax). Re…