Laden...

Profil von lord_fritte

myCSharp.de - Member Mitglied seit

Alle Beiträge

31.05.2014 - 11:19 Uhr

@herbivore Danke!

Also was ich vergessen habe zu erwähnen. Ich kopiere in meinem Test nur eine Datei, die ist 3,53 GB groß.
Ich teste mal die bytesPerSecond zusammen zu zählen und durch i zu teilen.

EDIT: Ach ne quatsch! ich brauche eine neue Zählvariable, welche ebenfalls nur im Sekundentakt hochgezählt wird.

31.05.2014 - 09:19 Uhr

Ich habe das ganze mal ein bisschen erweitert:


static void Copy(string sourcePath, string destinationPath)
    {
      FileInfo sourceFile = new FileInfo(sourcePath);
      FileInfo destinationFile = new FileInfo(destinationPath);
      FileStream sourceStream = sourceFile.OpenRead();
      FileStream destinationStream = destinationFile.OpenWrite();
      int fileBufferSize = 8192;
      int copiedBytes = 0;
      int readBytes = 0;
      Byte[] copyBuffer = new Byte[fileBufferSize];

      long bytesPerSecond = 0L;
      int lastTicks = Environment.TickCount;
      long lastBytes = 0L;

      for (int i = 0; (readBytes = sourceStream.Read(copyBuffer, 0, fileBufferSize)) > 0; i++)
      {
        destinationStream.Write(copyBuffer, 0, fileBufferSize);
        copiedBytes += readBytes;

        if ((Environment.TickCount - lastTicks) >= 1000)
        {
          bytesPerSecond = copiedBytes - lastBytes;
          lastBytes = copiedBytes;
          lastTicks = Environment.TickCount;
        }

        Console.WriteLine("{0} bytes von {1} bytes kopiert, {2} bytes / Sekunde", copiedBytes, sourceFile.Length, bytesPerSecond);
      }
    }

Aber ich weiß jetzt nicht ob die Berechnung nicht stimmt, oder ob es wirklich dauernd zwischen 9 mb/s und 120 mb/s schwankt.

30.05.2014 - 22:38 Uhr

Weil "File.Copy" so statisch ist, da kommt im Grunde nichts zurück. Ich möchte schon gerne in regelmäßigen Abständen ein Feedback bekommen, dass der Vorgang noch läuft und wie viel schon abgeschlossen ist.

30.05.2014 - 22:01 Uhr

Hallo ich bastel gerade an einer Funktion um eine Datei zu kopieren.
Bis jetzt funktioniert das ganz gut. ABER: hat jemand eine Idee wie ich berechnen kann wie viel Bytes/Sekunde kopiert werden?


FileInfo sourceFile = new FileInfo(sourcePath);
FileInfo destinationFile = new FileInfo(destinationPath);
FileStream sourceStream = sourceFile.OpenRead();
FileStream destinationStream = destinationFile.OpenWrite();
int fileBufferSize = 8192;
int copiedBytes = 0;
Byte[] copyBuffer = new Byte[fileBufferSize];

while ((copiedBytes += sourceStream.Read(copyBuffer, 0, fileBufferSize)) > 0)
{
  destinationStream.Write(copyBuffer, 0, fileBufferSize);
  Console.WriteLine("{0} bytes von {1} bytes kopiert, {2} bytes/Sekunde", copiedBytes, sourceFile.Length, 0);
}

Hallo, ich habe ein Fontobjekt(Arial und fontSize 15), ich habe einen String(Hallo Welt) und möchte im Grunde vorkalkulieren, wie hoch und breit in Pixeln, dieser Text sein wird.

23.07.2011 - 07:54 Uhr

Aber wie baut man sich sowas?

19.07.2011 - 06:07 Uhr

Hallo, ich habe in einer ListBox ein ContextMenu, darin habe ich MenuItems mit Commands. Der CanEyecute handler wird nur ausgelöst wenn sich die election der ListBox ändern, kann ich das ändern auf z.b. ContextMenuOpening?

Oder eine andere Frage, wenn ich jetzt eigene Control schreibe, wie kann ich darin einen Command Auslöser implementieren?

16.07.2011 - 04:43 Uhr

Schaue ich mir mal an, vielen Dank!

11.07.2011 - 03:20 Uhr

Aber ich habe noch keine richtiges Tutorial entdeckt, welcher mit zeig wie ich das umsetzen kann, was ich vor habe...

08.07.2011 - 00:06 Uhr

Wie genau funktioniert das mit dem Castle ActiveRecords?

07.07.2011 - 18:18 Uhr

Also unter Abstraktion stelle ich mir folgendes vor:
Ich habe eine Firmenverwaltung darunter einige Tabellen für Kunden, Mitarbeiter, Praktikanten und Auszubildende.

Jetzt möchte ich gerne die gemeinsamen Attribute(Name, Adresse, ..) in eine 5. Tabelle, Personen, auslagern.
Die Personen Tabelle bekommt einen Autoincrement Primärschlüssel "idPerson".
Die 4 Untertabellen bekommen jeweils einen einfache Primärschlüssel "idPerson" mir Referenz auf Personen.idPerson.

Und dazu möchte ich auf der C# Seite eine abstrakte Basis-Klasse Person von der sich die Unterklassen ableiten.

07.07.2011 - 02:40 Uhr

Hallo ich bin auf der Suche nach einem object persistence System, welches dem Gentle.Net ähnelt, Unterstützung unterschiedlicher Datenbanksystem(Mysql, SQLite, etc.).
Aber zusätzlich noch Abstraktion von Tabellen unterstützt.

28.06.2011 - 13:45 Uhr

Danke, schau ich mir mal an.

28.06.2011 - 09:33 Uhr

Ja schon klar, aber wie gesagt: Ich muss schon bei der Eingabe, den Kursor an die richtige Stelle setzen, bei vielen Feldern könnte das ein bisschen nervig werden.

25.06.2011 - 17:18 Uhr

Aber, ich muss trotztem ganz gezielt den Kursor an die richtige Stelle setzen.

25.06.2011 - 12:46 Uhr

ja aber, wenn ich folgende Maske verwende: "0,00" kann ich maximal 9,99 eingeben, für weitere Stellen muss ich das erweitern: "000,00", wenn ich nun aber nur 1,5 eingeben möchte, MUSS ich 001,50 eingeben.
Weil sonst kommt das als text zurück: __1,50 und das lässt sich ja schlecht in einen double wandeln.
Also gibt es eine Möglichkeit vorm Komma x-beliebig viele 0-9 stellen festzulegen?

25.06.2011 - 09:08 Uhr

Hallo, ich möchte eine MaskedTextbox für Währungen konfigurieren, also möchte ich gerne eine teils offene Maske haben, das heißt:
"{0-9 beliebig viele},{0-9 max. 2} €"

Interessant alles kommt über den ErrorDataReceived..

Ok, mit anderen Programmen geht es, aber das kann doch nicht sein, wenn ich die adb.exe selber starte, über Ausführen, cmd, batch, habe ich da jede menge Ausgabe stehen.

Hallo, ich möchte in einer Konsolenanwendung eine andere Konsolenanwendung aufrufen und die Standard Ausgabe umleiten:


  class Program
  {
    static string LogFilePath = "adb.log";
    static string ExeFilePath = @"D:\Android\sdk\platform-tools\adb.exe";

    static void Main(string[] args)
    {
      string cmdLine = Environment.CommandLine;
      int splitIndex = cmdLine.IndexOf(' ');
      cmdLine = cmdLine.Substring(splitIndex + 1);

      Process p = new Process();
      p.StartInfo.FileName = ExeFilePath;
      p.StartInfo.UseShellExecute = false;
      p.StartInfo.CreateNoWindow = true;
      p.StartInfo.RedirectStandardOutput = true;
      p.OutputDataReceived += new DataReceivedEventHandler(OutputDataReceived);
      p.StartInfo.Arguments = cmdLine;
      p.Start();
      p.BeginOutputReadLine();
      while (!p.HasExited) { }
    }

    static void OutputDataReceived(object sender, DataReceivedEventArgs e)
    {
      Console.WriteLine(e.Data);

      ((Process)sender).Close();
    }
  }

Mein Problem: e.Data ist immer null, das kann aber nicht rein, wenn ich die exe über die windows konsole aufrufe, bekomme ich ganz normal eine Ausgabe.

19.05.2011 - 18:13 Uhr

Habe ich schon versucht, findet den typ auch nicht.

19.05.2011 - 10:05 Uhr

Hallo, ich habe ein Problem, ich habe einen verschachtelte Typ:


public class Type1
{
  public enum Type2
  {}
}

Wie kann ich so einen typ in WPF definieren?


{x:Type self:Type1.Type2}

Führt zum Fehler, dass der Typ nicht gefunden wird.

15.05.2011 - 21:47 Uhr

Hallo, ich habe einen WCF Service geschrieben, mit Service, Interfaces, DataContracts und möcht diesen auf einem IIS Server Hosten. Aber wie kann ich von meinem Server, für die Clients eine *.svc-Datei erstellen lassen?

Ich habe noch eine Frage, ich habe folgendes Gebilde:


public class TestClass1<T>
  {
    public delegate void TestDelegate();

    public class TestClass2<T, T2>
    {
      public delegate void TestDelegate<T>();
    }
  }

Type t = typeof(TestClass1<>.TestClass2<,>.TestDelegate<>);
Type[] t2 = t.GetGenericArguments();

Zurück, bekomme ich aber in t2 4 Parameter, kann ich zuordnen welches Parameter zu welchem Typ gehören?
Denn das Property "DeclaringType" verweist bei allen 4 Parametern auf den Typ: TestConsole.TestClass11+TestClass22+TestDelegate`1

Hallo, ich habe ein Problem. Ich möchte über reflection die generischen Parameter und deren Einschränkungen ermitteln, um zu bestimmen, welche Typen als Parameter erlaubt sind.
Aber wie unterscheide ich zwischen, gar keiner Einschränkung und class als Einschränkung?

Ich habe hier mal ein kleines Testprogramm geschrieben, aber zwischen gar keiner Einschränkung und class als Einschränkung, sehe ich überhaupt keinen Unterschied, oder übersehe ich was?


public class Test<T0, T1, T2, T3, T4, T5> 
    where T1 : class 
    where T2 : struct
    where T3 : ICloneable 
    where T4 : BinaryReader
    where T5 : List<int>
  {
  }

static void Main(string[] args)
    {
      Type type = typeof(Test<,,,,,>);
      Type[] genericArguments = type.GetGenericArguments();

      foreach (Type genericArgument in genericArguments)
      {
        string name = genericArgument.Name;
        Type baseType = genericArgument.BaseType;
        Type[] baseInterfaces = genericArgument.GetInterfaces();
        bool isClass = genericArgument.IsClass;
        bool isAnsiClass = genericArgument.IsAnsiClass;
        bool isStruct = genericArgument.IsValueType;
        bool isInterface = genericArgument.IsInterface;
        Type[] constraints = genericArgument.GetGenericParameterConstraints();
      }
}

31.01.2011 - 11:19 Uhr

Hast du auch ein paar Verweise?

Aber sagt Inherited nicht, dass vererbte Attribute übernommen werden? Und erbt meine Klasse nicht die Attributes vom Interface?

Hallo, ich versuche gerade Attrubutes von Interfaces zu übernehmen, hier mein Beispiel Programm:


[Test1()]
  public interface ITest
  {
    [Test2()]
    string Name { get; set; }
  }

  public class Test : ITest
  {
    string _name = "";

    public void LoadAttributes()
    {
      Type t = GetType();
      object[] attrs1 = t.GetCustomAttributes(true);

      PropertyInfo[] properties = t.GetProperties(BindingFlags.Instance | BindingFlags.Public);
      foreach (PropertyInfo property in properties)
      {
        object[] attrs2 = property.GetCustomAttributes(true);
      }
    }

    public string Name
    {
      get { return _name; }
      set { _name = value; }
    }
  }

  [AttributeUsage(AttributeTargets.Class | AttributeTargets.Interface, AllowMultiple = false, Inherited = true)]
  public class Test1Attribute : Attribute
  { 
  
  }

  [AttributeUsage(AttributeTargets.Field | AttributeTargets.Property, AllowMultiple = false, Inherited = true)]
  public class Test2Attribute : Attribute
  {

  }

Aber attrs1 und attrs2 sind jeweils leer. Wo ist der Fehler?

08.01.2011 - 13:22 Uhr

Hallo, ich möchte ein eigenes Loggin Module schreiben, dazu habe mit der Hilfe von Prof. Google dies gefunden.
Aber kann ich 1. so ein Modul auch aus einer *.dll laden und 2. lässt sich so ein Modul auch debuggen?

Aber gibt es nichts um sich speziell bei UNC Pfads auf Pfad 1 als User A und auf Pfad B als User B anzumelden?

Hallo gibt es eine Möglichkeit den DirectoryInfo und FileInfo Klassen für Datei/Ordner Operationen(Löschen, Erstellen, Lesen, Schreiben, etc.) auf lokale Dateien/Ordner und auf UNC Dateien/Ordner andere Benutzerdaten mitzugeben?

Hallo, ich möchte mit Regex Typen aus einer Assembly filtern, Beispiel:


static bool Match(string str, string pattern)
    {
      //pattern = pattern.Replace("?", ".?");
      //pattern = pattern.Replace("*", ".*");
      Regex regex = new Regex(pattern);
      return regex.IsMatch(str);
    }

    static void Main(string[] args)
    {
      string path = @"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.0\PresentationCore.dll";
      string pattern = "Content*";
      Assembly assm = Assembly.LoadFile(path);
      Type[] types = assm.GetTypes();

      IList<Type> res = (from t in types where Match(t.Name, pattern) orderby t.Name ascending select t).ToList();
}

So, an sich funktioniert das auch ganz gut. ABER: In der Ausgabe stecken auch Typen mit dem Namen "IContentHost", "BitmapEffectContent", etc. Das soll aber nicht rausgefiltert werden, weil ich das "*" hinter Content und nicht davor gesetzt habe.

12.12.2010 - 20:33 Uhr

Hallo, eine Frage, gibt es eine brauchbare C# IDE, mit Kompiler, Syntax Highlighting und IntelliSense für Windows was nicht installiert werden muss?

28.11.2010 - 16:22 Uhr

Ja, danke, so geht es auch habe ich grad festgestellt:


var res = from o in obj
                from s in o.Str
                where s == "DC"
                select o;

28.11.2010 - 12:16 Uhr

Hallo, ich habe ein Testprogramm:


class Program
  {
    static void Main(string[] args)
    {
      List<Obj> obj = new List<Obj>();

      Obj obj1 = new Obj();
      obj1.Name = "A";
      obj1.Str.Add("AA");
      obj1.Str.Add("AB");
      obj1.Str.Add("AC");
      obj1.Str.Add("AD");

      Obj obj2 = new Obj();
      obj2.Name = "B";
      obj2.Str.Add("BA");
      obj2.Str.Add("BB");
      obj2.Str.Add("BC");
      obj2.Str.Add("BD");

      Obj obj3 = new Obj();
      obj3.Name = "C";
      obj3.Str.Add("CA");
      obj3.Str.Add("CB");
      obj3.Str.Add("CC");
      obj3.Str.Add("CD");

      Obj obj4 = new Obj();
      obj4.Name = "D";
      obj4.Str.Add("DA");
      obj4.Str.Add("DB");
      obj4.Str.Add("DC");
      obj4.Str.Add("DD");

      obj.Add(obj1);
      obj.Add(obj2);
      obj.Add(obj3);
      obj.Add(obj4);
    }
  }

  class Obj
  {
    public string Name { get; set; }
    public List<string> Str { get; set; }
  }

Was ich jetzt möchte ist nach z.b. "CB" suchen und daraus das zugehörige Obj zu bekommen, in dem Fall das Object mit dem Namen C(obj4).

14.11.2010 - 21:24 Uhr

Ja.. die Frage ist nur wann...

07.11.2010 - 22:19 Uhr

Weiß jemand ob man noch irgendwie an das "MonoDroid for Visual Studio 2010 Plugin" ran kommt?..

Sowas wie ookii dialogs habe ich gesucht, danke.

Hallo, ich stehe für einem Problem, gibt es für WPF den FolderBrowseDialog und OpenFileDialog wie man ihn aus Windows Vista und Windows 7 kennt?

17.05.2010 - 06:00 Uhr

Also ich habe mein Problem identifiziert. Ich denke es liegt an meiner Bildschirm Konfiguration.
primärer Bildschirm:
Position: Rechts
Auflösung: 1920 x 1080

sekundärer Bildschirm:
Position: Links
Auflösung: 1680 x 1050

Also ist die Koordinate von meinem sekundärer Bildschirm wohl negativ: -1680, 0, damit scheint SHAppBarMessage wohl nicht klar zu kommen.
Aber gibt es noch denoch eine Möglichkeit das ans laufen zu bekommen?
Bei anderen Anwendungen funktioniert es doch auch...

02.05.2010 - 16:23 Uhr

statt den Text "Speicherverbrauch ermitteln" ins Titelfeld einzugeben, hättest du ihn auch einfach mal in das Suchfeld eingeben können ... und sollen:

Danke.

Speicherverbrauch eines Prozesses :
[...]

Das ermittelt aber den Speicherverbrauch von einem ganzen Prozess. Ich möchte aber den Speicherverbraucht von einem bestimmten Teil in einem Prozess.

02.05.2010 - 15:23 Uhr

Hallo, ich habe ein Problem mit dem XmlSerializer und Vererbung.
Wenn eine Klasse von einer anderen abgeleitet ist, muss ich ja mit dem XmlInclude-Attribute arbeiten.
Aber leider an der Basisklasse, Beispiel:


 [Serializable(), XmlInclude(typeof(ClassB)), XmlInclude(typeof(ClassC))]
  public class ClassA
  {
    [XmlElement()]
    public string TextA = "";
  }

  [Serializable()]
  public class ClassB : ClassA
  {
    [XmlElement()]
    public string TextB = "";

    [XmlElement()]
    public ClassC SubClassC = new ClassC();
  }

  [Serializable()]
  public class ClassC : ClassA
  {
    [XmlElement()]
    public string TextC = "";
  }

Aber gibt es da keine andere Möglichkeit? Was ist wenn ich das ganze in einer anderen Assembly erweitern möchte? Dort lässt sich die Basisklasse ja nicht mehr verändern.

28.04.2010 - 21:01 Uhr

Von allen Variablen, Objecten, etc. in einem bestimmten Bereich.

28.04.2010 - 20:24 Uhr

Hallo, gibt es eine Möglichkeit den Speicherverbrauch in Bytes innerhalb eines bestimmten Programmabschnitts zu ermitteln?