Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von TheBrainiac
Thema: EntityDocument
Am im Forum: .NET-Komponenten und C#-Snippets

Zitat von FZelle
Durch die wahl der GPL als Lizenz wird die Nutzung nur leider in 99% der Fälle verhindert und so die Verbreitung extrem eingeschränkt.

Warum? Unter welche Lizenz soll ich die Komponenten denn dann stellen, damit sie für alle benutzbar ist (ruhig auch kommerziell & in veränderter Form), ich aber als Copyrightinhaber erhalten bleibe? Wenn ich das als Public Domain einstelle, bin ich ja nicht mehr Copyrightinhaber, oder?

Gruß, Christian.

Thema: Richtige Tabelle?
Am im Forum: Rund um die Programmierung

Wenn du es schnell und einfach haben möchtest, schau dir mal mein EntityDocument an. Damit brauchst du nur eine Klasse, die die Informationen des Spiels hält.

Gruß, Christian.

Thema: Komponente zur Bildbearbeitung
Am im Forum: Grafik und Sound

Schade.

Thema: Komponente zur Bildbearbeitung
Am im Forum: Grafik und Sound

Vielleicht kannst du Paint.Net irgendwie einbinden?

Thema: Nur eine Kopie einer Internetseite, die individualisiert ist (inkl. eigener Internetadresse)?
Am im Forum: Web-Technologien

Sieh dir mal DotNetNuke an. Das ist ein Portalsystem, mit dem du genau das machen kannst, was du vorhast.

Gruß, Christian.

P.S.: Die Site ist leider gerade im Wartungsmodus. Also einfach später noch einmal vorbeigucken.

Thema: DLL Debuggen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Zitat von VanKurt
generiert zur Laufzeit ... DLL "D" ... diese DLL debuggen

Wenn du damit meinst, dass die Anwendung wirklich eine DLL generiert, ist das so wie oben beschrieben möglich. wenn sie allerdings nur eine RunTime-Assembly generiert und diese ausführt, glaube ich leider nicht, dass das möglich ist.

Gruß, Christian.

Thema: Code "Abstriche"
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Ich bin mir nicht sicher, ob VS das von Haus aus kann, aber mit Resharper geht das mit sicherheit.

Gruß, Christian.

Thema: Wert in einem private Member geht verloren, wie ist soetwas möglich?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Das ist durchaus möglich. Ich weis ja jetzt nicht, wie du Serialisierst, aber sollte es per Reflection sein, ist es gut möglich, dass die private Variable nach dem Aufruf des Konstruktors nocheinmal durch den Deserialisierer verändert wird.

Gruß, Christian.

Thema: Wert in einem private Member geht verloren, wie ist soetwas möglich?
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Keinen

Spaß beiseite, zeig mal ein bisschen Code. So ist das schwer nachzuvollziehen.

Gruß, Christian.

Thema: Dockpanel Suite
Am im Forum: GUI: Windows-Forms

Eine Dokumentation gibt es (noch?) nicht.

Aber hier gibt es gute Beispiele.

Gruß, Christian.

Thema: Dockpanel Suite
Am im Forum: GUI: Windows-Forms

Klick

Thema: Hilfe von Lesen von bestimmten teilen im Textfile
Am im Forum: Rund um die Programmierung

foreach (Match match in Regex.Matches(File.ReadAllText(@"C:\Index.txt"), @"\(\s*index\s*(?<Index>\d+)\s*\(""(?<String>[^""]+)""\);")) {
    Console.WriteLine("{0} --> {1}", match.Groups["Index"].Value, match.Groups["String"].Value);
}

Gruß, Christian.

Thema: Panel in 3D Optik [eigenes Usercontrol]
Am im Forum: GUI: Windows-Forms

Sieh dir mal die CodeProject-Beiträge von Sacha Barber an. Vielleicht findest du auf seiner WebSite auch was. Ich bin mir ziemlich sicher, dass ich sowas ähnliches von ihm schon einmal gesehen habe.

Gruß, Christian.

Thema: Panel in 3D Optik [eigenes Usercontrol]
Am im Forum: GUI: Windows-Forms

Klick

Thema: Hilfe von Lesen von bestimmten teilen im Textfile
Am im Forum: Rund um die Programmierung

Sieh dir mal folgende Klassen an:

  • File (Insbesondere File.ReadAllText(...))
  • Regex

Das sollte erstmal helfen.

Gruß, Christian.

Thema: Listbox soll aus nebenthread aktualisiert werden - denkanstoß nötig :)
Am im Forum: GUI: Windows-Forms

Zitat von tenesto
nein, funktioniert leider nicht

Was funktioniert nicht? gibt es eine Exception?

Thema: VS 2010 - Setup ohne Resourcen-Datei
Am im Forum: Rund um die Programmierung

Zitat von SlyFox
...eine Exception...

Welche?

Thema: VS 2010 - Setup ohne Resourcen-Datei
Am im Forum: Rund um die Programmierung

Zitat von SlyFox
beinhaltet auch eine Resource, die unter Resourcen angezeigt wird, im Installationspaket jedoch nicht enthalten ist.

Ich kenne mich zwar mit den Setups nicht so gut aus, aber:

Wenn die Resource in einem Projekt im Unterordner Resourcen angezeigt wird, wird sie (normalerweise) mit in die Assembly des jeweiligen Projektes eincompiliert. Dann braucht sie ja nicht nochmal zusätzlich in das Setup, oder?

Gruß, Christian.

Thema: Listbox soll aus nebenthread aktualisiert werden - denkanstoß nötig :)
Am im Forum: GUI: Windows-Forms

private void listbox_itemadd(string txt) {
    if (this.listbox_ausgabe.InvokeRequired) {
        list_add d = new list_add(listbox_itemadd);
        this.Invoke(d, new object[] { txt });
    } else { // Das fehlt bei dir
        listbox_ausgabe.Items.Add(txt);
    }
}

Gruß, Christian.

Thema: Eigene Rechteverwaltung entwickeln
Am im Forum: Rund um die Programmierung

Hi!

Ich bin bei meinen Projekten immer so vorgegangen:

Ich habe mir eine Klasse Permission erstellt. Dann habe ich eine Klasse Role erstellt, die ihrerseits beliebig viele Permissions enthält. Dann habe ich einen User, der beliebig viele Roles enthält. Dadurch kann man das eigentlich sehr schön (imho) abbilden.

class Permission {
    public Permission(string name) {
        Name = name;
    }
    public string Name { get; private set; }
}

class Role {
    public Role(string name) {
        Name = name;
        Permissions = new List<Permission>();
    }
    public string Name { get; private set; }
    public ICollection<Permission> Permissions { get; private set; }
    bool HasPermission(string name) { ... }
    bool HasPermission(Permission perm) { ... }
}

class User {
    public Role(string name) {
        Name = name;
        Roles = new List<Role>();
    }
    public string Name { get; private set; }
    public ICollection<Role> Roles { get; private set; }
    bool HasPermission(string name) { ... }
    bool HasPermission(Permission perm) { ... }
    bool IsInRole(string name) { ... }
    bool IsInRole(Role role) { ... }
}

Da du das noch mit den Modulen erwähnst, das könnte man schön so lösen:

class Module {
    string Name;
}

class ModulePermission : Permission {
    public ModulePermission(Module m) 
        : base(string.Format("{0}_ModulePermission", m.Name) { }
}

Zu dem angesprochenen Singleton-Objekt, das habe ich immer so gelöst:

static class Authorization {
    static User CurrentUser { get; private set; }
    static bool Login(string username, string password) {
        //Setze CurrentUser, wenn Login-Daten korrekt
    }
}

Dann kannst du Folgendes machen:

if (Authorization.CurrentUser.HasPermission("TestModule_ModulePermission")) {
    // User ist berechtigt.
}

Gruß, Christian.

Thema: [endlich möglich] Managed Shell Extensions mit .NET 4.0?!?
Am im Forum: Rund um die Programmierung

Zitat von talla
Mit 4.0 änderte sich das dann, die 4er Runtime erlaubt auch das laden weiterer Versionen. Aber, damit sind nicht die bisherigen gemeint, sondern zukünftige. Bei den bisherigen Runtimes bleibt alles beim alten.

Endlich mal jemand, der es vernünftig in Worte fasst.

Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

Hi, Herbivore.

Da deine Lösung richtig ist , Bist du dran, aber da du diesen Part gfoidl überlassen hast --> gfoidl, du bist dran

Gruß, Christian.

Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

Die neue Aufgabe:

Entwickle einen simplen Kompressions-Algorithmus!

Vorgegeben ist folgendes Snippet (Vollständige Vorlage siehe Anhang):

using System;
using System.Text;

public class Compression
{
    public static void Main() {
        string input = /*Gekürzt! Siehe Anhang!*/"";
        byte[] uncompressed = Encoding.ASCII.GetBytes(input);
        byte[] compressed = Compress(uncompressed);
        byte[] decompressed = Decompress(compressed);
        string output = Encoding.ASCII.GetString(decompressed);
        double ratio = (1d - (double)compressed.Length / (double)uncompressed.Length) * 100;
        bool equal = input == output;
        bool success = ratio > 10d && equal;
        
        Console.WriteLine("Uncompressed Length: {0}", uncompressed.Length);
        Console.WriteLine("Compressed Length: {0}", compressed.Length);
        Console.WriteLine("Decompressed Length: {0}", decompressed.Length);
        Console.WriteLine("Compression Ratio: {0:0.0000}%", ratio);
        Console.WriteLine("Input equals output: {0}", equal);
        Console.WriteLine("Successful: {0}", success);
        
        Console.ReadKey(true);
    }
    
    public static byte[] Compress(byte[] input) {
        // Hier der Kompressions-Algorithmus
    }
    
    public static byte[] Decompress(byte[] input) {
       // Hier der Dekompressions-Algorithmus
    }
}

Bedingungen:
  • Frameworks- / 3rd-Party-Klassen, die selbst Komprimierungsalgorithmen in irgend einer Form bereitstellen, sind verboten!
  • Die Kompressionsrate muss zum Erfolgreichen bestehen mindestens 10% betragen!
  • Die Kompression muss verlustfrei sein! (D.h. der Output von der Dekompressions-Methode muss gleich dem Input der Kompressions-Methode sein!)

Tipps:
  • Am Anfang war das Wort!
  • Ein Wörterbuch kann auch nicht schaden!

Gruß & Viel Spaß, Christian.

Thema: Was hören .net Programmierer?
Am im Forum: Smalltalk

Ich habe mal wieder die alten Alben von Nightwish ausgegraben (Oceanborn, Wishmaster). Nightwish ist sowieso mein All-Time-Favourite.

Beim Zocken (Hellgate: London) höre ich im Moment Erben der Schöpfung.

Gruß, Christian.

//Edit: Wen es interessiert: Mein LastFm-Account

Thema: Das Programmier-Spiel: nette Übungsaufgaben für zwischendurch
Am im Forum: Smalltalk

public static int [] GetPoints (int [] dice)  {
    int[] result = new int[Enum.GetValues(typeof(Scores)).Length];

    var getCount = new Func<int, int>((i) => dice.Where((d) => d == dice[i]).Count());

    Array.Sort(dice);

    result[(int)Scores.Ones] = dice.Where((d) => d == 0).Count() * 1;
    result[(int)Scores.Twos] = dice.Where((d) => d == 1).Count() * 2;
    result[(int)Scores.Threes] = dice.Where((d) => d == 2).Count() * 3;
    result[(int)Scores.Fours] = dice.Where((d) => d == 3).Count() * 4;
    result[(int)Scores.Fives] = dice.Where((d) => d == 4).Count() * 5;
    result[(int)Scores.Sixes] = dice.Where((d) => d == 5).Count() * 6;
    result[(int)Scores.ThreeOfAKind] = getCount(0) ≥ 3 || getCount(2) ≥ 3 || getCount(4) ≥ 3 ? dice.Sum((d) => d + 1) : 0;
    result[(int)Scores.FourOfAKind] = getCount(0) ≥ 4 || getCount(4) ≥ 4 ? dice.Sum((d) => d + 1) : 0;
    result[(int)Scores.FullHouse] = result[(int)Scores.ThreeOfAKind] > 0 ? (getCount(0) == 2 || getCount(4) == 2 ? 25 : 0) : 0;

    bool largeStraight = true;
    var num = dice[0];

    for (int i = 0; i < 5; i++) {
        largeStraight = largeStraight && (dice[i] == i + num);
    }

    result[(int)Scores.LargeStraight] = largeStraight ? 40 : 0;

    bool smallStraight = false;
    var arr = dice.Distinct().ToArray();

    if (arr.Length ≥ 4) {
        var slice = arr.Take(4).ToArray();
        
        num = slice[0];
        smallStraight = true;

        for (int i = 0; i < 4; i++) {
            smallStraight = smallStraight && (slice[i] == i + num);
        }
        
        if (!smallStraight && arr.Length == 5) {
            slice = arr.Skip(1).ToArray();
            smallStraight = true;
            num = slice[0];

            for (int i = 0; i < 4; i++) {
                smallStraight = smallStraight && (slice[i] == i + num);
            }
        }
    }

    result[(int)Scores.SmallStraight] = smallStraight ? 30 : 0;
    result[(int)Scores.Yahtzee] = getCount(0) == 5 ? 50 : 0;
    result[(int)Scores.Chance] = dice.Sum((d) => d + 1);

    return result;
}

Thema: ASP.Net Hosting für günstig oder lau
Am im Forum: Smalltalk

Da habe ich soweit ich es verstanden habe entweder PHP oder ASP.Net. Außerdem habe ich nur 400MB Webspace, nur eine SubDomain, etc.

Zu Teuer ist er mir nicht. Kann auch gerne bis zu 10€ kosten. Hätte es aber halt gerne billiger :D.

Gruß, Christian.

Thema: ASP.Net Hosting für günstig oder lau
Am im Forum: Smalltalk

Hi @ All.

Ich habe eine Domain (bei 1und1.de) und will sie umziehen. Bis jetzt laufen darauf nur PHP-Anwendungen, ich möchte zusätzlich aber auch ASP.Net haben. Welche Hosting-Anbieter könnt ihr empfehlen?

Genauer Wunsch:

  • Kosten bis max. 5€ / Monat
  • ASP.Net muss vorhanden sein
  • PHP muss vorhanden sein
  • MYSql muss vorhanden sein
  • Mehrere SubDomains
  • MSSql darf gerne auch !zusätzlich! vorhanden sein
  • mind. 1GB Webspace
  • FTP-Zugang
  • Bezahlung wenn es geht per PayPal, Bankeinzug ist aber auch möglich

Ich kenne x10hosting u.ä., suche aber etwas "professionelleres".

Gruß, Christian.

Thema: Suche Tool zum Erstellen von synchronisierten Lyrics
Am im Forum: Smalltalk

Hi @ All.

Ich habs jetzt nochmal mit MiniLyrics probiert. Mit der neuen Version funktioniert es einwandfrei.


Gruß, Christian.

Thema: Suche Tool zum Erstellen von synchronisierten Lyrics
Am im Forum: Smalltalk

Zitat von talla
Was soll denn dein Wunschtool können?

Ich kopiere die Lyrics in eine Textbox und gebe den Pfad zum Lied an. Dann wird das Lied abgespielt. Ich lese die Lyrics mit und wenn die passende Textstelle kommt, klicke ich auf einen Button, um die "aktuelle Zeile" eins nach unten zu verschieben. Dann sollen die Lyrics entweder in den Tags oder in einer Datei im gleichen Ordner gespeichert werden.

Optimal wäre natürlich ein Tool, das die Lyrics selbst aus dem INet zieht. Und sie selbst synchronisiert. Aber das ist leider Wunschdenken, soweit ist die Spracherkennung noch nicht, oder?

MiniLyrics habe ich schon asprobiert, aber es funktioniert leider mit foobar2000 nicht. Ich habe foobar2000 auch ein "klein" bisschen modifiziert, vllt deswegen....
Zitat von aequitas
So ein Problem habe ich nicht, da ich fast ausschließlich Black-/Death-/Trash-Metal hoere..

Ich auch ab und zu. Aber eben auch Lieder, wo wirklich noch echt gesungen wird.


Gruß, Christian.

Thema: Suche Tool zum Erstellen von synchronisierten Lyrics
Am im Forum: Smalltalk

Hi @ All.

Wie der Titel schon sagt: Ich suche ein Tool zum Erstellen von synchronisierten Lyrics.

Kennt ihr so eins?

Gruß, Christian.