Beiträge von florian0

    Platte ausbauen > innen anderen PC einbauen > Daten auslesen > fertig


    Wenn es ne IDE-Platte ist, also keine SATA, brauchst du noch en Adapter.


    Gruß
    florian0

    Da muss doch ein Haken sein. Klärt mich auf ^^


    Bei Dreamspark?
    Der Haken ist / Die Haken sind:
    - Nur eine Lizenz (bei mir zumindest)
    - Nicht weiterverkaufen
    - Nicht kommerziell nutzen


    Fam0uZz schrieb:

    Hey kurze Frage, wollte mich bei Dreamspeark nun anmelden um mir Windows
    8 laden zu können, jedoch findet er meine Schule nicht, irgendeine Alternative?



    Soweit ich das System verstanden hab, geht das nur wenn deine Schule am Dreamspark-Programm teilnimmt. Frag mal im Sekretariat nach. In meiner Schule ging das auch.

    Ich hab das mit dem Serializing versucht. Ich hab alles als Serializeable gekennzeichnet, von ISerializeable erben lassen, etc. Serializing hasst mich :D
    Wenn du Lust und Zeit hast, könnten wir daran noch ein bischen tüfteln. Mich würde auf jeden Fall interessieren, warum das mit Callback nicht klappt.


    Ich habs anders gelöst:


    [headline]Lösung[/headline]


    Mit Callback will es einfach nicht klappen. Daher nutze ich als Alternative die Klassen AppDomainSetup und AppDomainInitializer.



    Ich will außerhalb der AppDomain auf die DLL zugreifen, bzw z.B. die Funktion SayHello aufrufen.


    Ich hab inzwischen sogar geschafft eine Instanz des Interfaces außerhalb der AppDomain zu erzeugen:



    Edit: Auf jeden Fall sehr sehr tricky das Ganze ... Ich hab gerade rausgefunden, das zu den Tutorial eine komplette Projektmappe zum Download angeboten wird. Die werde ich mir morgen mal antun.


    Edit2: Ich weis nun wie ich die nötigen Infos aus der AppDomain holen kann. Über SetData kann ich Daten in die AppDomain schreiben und diese später mit GetData wieder abholen. Allerdings will das nicht so wie ich will:
    [cs]
    AppDomain appDomain = AppDomain.CreateDomain("Plugin 1");


    appDomain.DoCallBack(new CrossAppDomainDelegate(delegate()
    {
    Assembly asm = Assembly.LoadFrom(@"Plugin.dll");


    String pluginName = String.Empty;


    foreach (Type type in asm.GetTypes())
    {
    Type intface = type.GetInterface("PluginTest.IPlugin", true);
    if (intface != null)
    {
    pluginName = type.FullName;


    break;
    }
    }


    appDomain.SetData("PluginName", pluginName);


    }));


    String name = (String)appDomain.GetData("PluginName");


    IPlugin plugin = (IPlugin)appDomain.CreateInstanceFromAndUnwrap("Plugin.dll", name);
    plugin.SayHello();


    AppDomain.Unload(appDomain);
    [/cs]


    Sobald ich jedoch SetData in den Callback packe, gehts netmehr:

    Code
    1. Der Typ "PluginTest.Program+<>c__DisplayClass1" in Assembly "PluginTest, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" ist nicht als serialisierbar gekennzeichnet.


    Was soll ich da als Serialisierbar kennzeichnen?

    Hiho,


    ich bin wiedermal an einem Punkt angelangt, andem ich nicht weiterkomme.


    Ich versuche mich gerade an Plugins in C#. Das klappt auch ganz gut:


    [cs]
    Assembly assembly = Assembly.LoadFrom("Plugin.dll");


    foreach (Type type in assembly.GetTypes())
    {
    Type typeInterface = type.GetInterface("PluginTest.IPlugin", true);


    if (typeInterface != null)
    {
    IPlugin plugin = (IPlugin)Activator.CreateInstance(type);


    plugin.SayHello();


    break;
    }
    }
    [/cs]




    Nun möchte ich aber gerne Plugins zur Laufzeit nicht nur laden sondern auch entladen können. Geladene Assemblys werden erst entladen, wenn die gesammte AppDomain entladen wird.


    Also dachte ich mir: Jedes Plugin in eine eigene AppDomain. Das klappt ebenfalls alles ganz gut.


    [cs]AppDomain appDomain = AppDomain.CreateDomain("Plugin 1");


    appDomain.DoCallBack(new CrossAppDomainDelegate(delegate()
    {
    Assembly asm = Assembly.LoadFrom(@"Plugin.dll");


    IPlugin plugin;


    foreach (Type type in asm.GetTypes())
    {
    Type intface = type.GetInterface("PluginTest.IPlugin", true);
    if (intface != null)
    {
    plugin = (IPlugin)Activator.CreateInstance(type);
    plugin.SayHello();
    break;
    }
    }


    }));


    AppDomain.Unload(appDomain);[/cs]


    Nur möchte ich natürlich auch auf das Plugin zugreifen können. Das geht aber im Moment nur über den Delegate. Und sobald der delegate durch ist, ist alles was Instanzen war vergessen.


    Wie greife ich also auf die DLL in der AppDomain zu?


    Ich hab mir dazu schon dieses Tutorial angeschaut, was im Endeffekt genau das realisiert, aber ich verstehe es nicht ...
    http://get-the-solution.net/in…23-Plugins-mit-AppDo.html


    Gruß
    florian0

    Stealthy ist ein vollständiger Proxy. Da wird alles über den Proxy geladen. Bei YT wars so, dass du nur die Seite mit ner Amerikanischen (oder eher: Nicht-Deutschen) IP öffnen musstest. Das Video selbst konnte man ohne Proxy laden und hatte so keine Geschwindigkeitseinbußen.


    Gruß
    florian0


    *(Schleichwerbung: Wer fürn Proxy und Premium bei den meisten gängigen OCH 7€/Mon ausgeben würde ->PM)*

    Ist jetzt nur ne Vermutung aber: Es gibt ja CD-R und CD+R. Wenn du bisher nur die CD-R getestet hast, versuch mal die CD+R.


    Ansonsten: Sicherstellen, dass es eine reine AudioCD ist. Erkennbar daran, dass wenn du sie in den PC schiebst keine MP3s mehr da sind sondern nurnoch die einzelenen Tracks.


    Gruß
    florian0

    Nachdem mir ein ehmaliger Klassenkamerad vor kurzem zeigte, dass man in Delphi Operatoren überladen bzw. überschreiben kann, stelle ich nun fest: Das geht auch in C#.


    Ich selbst habe noch keine wirkliche Verwendung gefunden, aber ich finde es irgentwie cool :D


    Zunächst brauchen wir eine Klasse:


    Rechenoperatoren


    Diese Klasse möchte ich gerne Addieren können:


    Code
    1. Class1 c1 = new Class1(15, 30);
    2. Class1 c2 = new Class1(5, 20);
    3. c1 += c2;



    Dies geht erstmal nicht, da .NET ja nicht weis wie man die Klasse addieren kann.

    Code
    1. Fehler 1 Der Operator "+=" kann nicht auf Operanden vom Typ "Test.Class1" und "Test.Class1" angewendet werden.


    Also erstellen wir einen Plus-Operator, und erklären in diesem wie man die beiden Klassen addiert.



    Das ganze geht natürlich nicht nur mit dem Plus-Operator, sondern auch mit allen anderen Operatoren.


    Boolean-Ausdrücke
    Neben den Rechenoperatoren gibt es noch die Ausdrücke (==, !=, <=, >=, etc.)


    So könnte man prüfen, ob die beiden Klassen gleich sind:

    Code
    1. public static bool operator ==(Class1 v1, Class1 v2)
    2. {
    3. if ((v1.Zahl1 == v2.Zahl1) && (v1.Zahl2 == v2.Zahl2))
    4. return true;
    5. else
    6. return false;
    7. }



    Weiteres
    Zusätzlich kann man auch verschiedene Datentypen angeben. Wenn man z.B. Klasse + Integer oder Klasse1 + Klasse2 rechnen möchte oder mit etwas anderem vergleichen möchte. Welchen Sinn auch immer das haben könnte.

    Alle Objekte im Spiel: Mobs, Waffen, Equip, Sammelviehzeug, Pferde, sogar die ganzen Häuser usw. auf der Map, sind BMS-Files.


    Das Tool was 000user000 gepostet hat ist nur ein Konverter. Der Konvertiert die BMS-Models von Joymax in Wavefront-OBJ Models (einfaches, zeilenbasiertes Format und kompatibel mit den meisten 3D Editoren).


    Gruß
    florian0

    Du Totengräber :D


    *Model ausgrab*
    Hab auch schon damit gespielt:
    http://cdn.project-hazard.org/stagetwo/untitled9.png


    InGame-Screens hab ich auch noch irgentwo ...


    Ich hab später versucht die Bones aus den Models zu ziehen. Das klappte auch mehr oder weniger. Aber bei Animationen hab ich dann aufgegeben. Vermutlich weil ich fast keine Erfahrung mit 3D-Modellierung habe xD
    Vielleicht finden sich ja ein paar Leute die Lust hätten was zu basteln?


    Gruß
    florian0

    Hiho,


    ich kam gestern Abend aus meinem wohlverdienten "Urlaub" zurück und hab mit meiner Digicam (Canon IXUS 85 IS) ein paar (600) Fotos geschossen :D.


    Davon auch dieses:
    http://cdn.project-hazard.org/IMG_2954.JPG
    5 Sek Belichtungszeit mit einer 200er ISO und nem schiefen Holztisch als Stativ xD.


    Wie man sieht; meine Cam hat ein relativ hohes Rauschen, vorallem beim Nachtfotografien.


    Ich hab das Bild gerade-gerückt und ein paar Filter draufgekloppt:
    http://cdn.project-hazard.org/IMG_2954%20copy.jpg


    Inzwischen hab ich die Grün-Rot-Verfärbung auch wegbekommen, bleibt noch die Körnung bzw. die JPEG-Artefakte. (Wie) Bekommt man Die weg?
    http://cdn.project-hazard.org/IMG_2954%20copy3.jpg
    (Vielleicht sollte ich auch nicht immer in JPEG speichern xD)


    Ich hatte versucht die dunklen von den hellen Bereichen freizustellen. Dann per Ebenenmaske die gleiche Ebene nochmal drüber legen um mit nem Weichzeichner glattbügeln. Nur bin ich nicht so der Freistellungs-Pro, weshalb die Ränder teilweise unscharf geworden sind.


    Hättet ihr sonst noch Vorschläge, was das Bild "besser" machen würde?


    Gruß
    florian0

    Ich hab die Graka erstma mitbestellt, wenn es auch ohne geht kann ich die ja zurück schicken.


    Ich werde Berichten! :D


    Allerdings erst frühestens in einer Woche da ich morgen nach Italien fahre.


    Gruß
    florian0

    Stimmt soweit:


    Siehe auch:
    http://de.wikipedia.org/wiki/Normalisierung_%28Datenbank%29
    (Nur die Normalformen 1-3, der ist is nicht besonders relevant)


    Theoretisch muss man die Beziehungen garnicht mit in die Datenbank einbringen. Man könnte sie auch nur theoretisch darstellen (Musste ich bei unserem Schul-Abschlussprojekt machen, weil die Datenbank auf InnoDB statt auf MyISAM gestellt war und InnoDB keine Beziehungen kann). Man läuft dann eben auf die Gefahr hin, das die Datenbank fehlerhaft wird.
    z.B. Man löscht eine Uebung die 30 Teilnehmer hatte, dann hat man 30 Zombieeinträge in der vk_Personal_Uebung die keiner mehr Zuordnen kann. Ist die Beziehung in der Datenbank festgelegt, ist dieser Vorgang nicht möglich.


    Gruß
    florian0

    Ja so ähnlich ...
    Für jede Übung pro Teilnehmer einen eigenen Eintrag.



    Uebungs-Tabelle


    Personal-Tabelle


    Verknüpfungstabelle


    Edit: Und da kann man dann ohne viel Programmieraufwand solche Ausgaben rausholen:



    Gruß
    florian0