Hi,
Habe ich das korrekt verstanden?
Du möchtest, dass eine DLL, geschrieben in C#, von einer Applikation, geschrieben in (native) C++, geladen wird und bestimmte Funktionen ausgeführt werden?
Gruss Simon
A) Such dir jemanden, der nen Rootserver hat, lass da deinen Server laufen. Du hast in deinem Bekanntenkreis bestimmt jemanden.
Bastel ein Backend mit PHP oder ner anderen Scriptsprache und lad das ganze auf nen Freehoster hoch.
C) Verpasse jedem Client nen Server. Wenn ein Client ins Netzwerk möchte, muss er nur einen Server finden. (Bruteforce über IP-Ranges, von einigen Nutzern, die das Programm nutzen). Dauert aber lange und garantiert nicht, dass man jemals ins Netzwerk kommt, insofern vermutlich nicht praktikabel.
Der Einfachheit halber beziehe ich mich hier auf ASCII und nicht auf Unicode wie es in .Net eigentlich Standard ist:
Wenn in deiner Datei steht:
Zeile1\nZeile2
Dann sind "\n" zwei Zeichen nämlich 0x5c und 0x6e diese werden in der Ausgabe als '\' und 'n' dargestellt.
Steht in deiner Datei:
Zeile1
Zeile2
So befindet sich darin ein Steuerzeichen (0x0a) das besagt, dass zwischen "Zeile1" und "Zeile2" ein neue Zeile eingefügt werden soll.
Benutzt du in deinem Code "\n" so erkennt der Compiler diese Escape-Sequenz und schreibt nicht 0x5c & 0x6e in die Ausgabedatei sondern 0x0a.
Da aber deine Eingabe aus der Textdatei nicht interpretiert wird (d.h. die Folge 0x5c 0x6e wird durch 0x0a ersetzt) erscheint sie genau so wie du sie in die Datei geschrieben hast.
Willst du zwei Zeilen in deiner Ausgabe haben musst du das auch genau so in die Datei schreiben oder es selbst ersetzen, so zum Beispiel:
Console.WriteLine(sReader.ReadLine().Replace("\\n", "\n"));
Oh ich seh schon:
Ich hatte , um mir die Arbeit mit der Serialisierung etwas einfacher zu machen, eine Methode zur Serialisierung innerhalb der Klasse definiert und zugleich eine BinaryFormatter Instanz als Klassenmember angegeben. Diese ist natürlich nicht serialisierbar, so wie die Exception es beschreibt, eigentlich logisch aber nur dann wenn man an der richtigen Stelle sucht.
Vielen Dank für die Hilfe O.o!
Skilllord890 schrieb:
Dieser Thread ist völlig erst gemeint und wer nur dumme Kommentare abgeben kann, soll einfach mal die Klappe halten.
Wie groß ist eigentlich die Warscheinlichkeit, dass .NET schon durch andere Programme auf dem PC installiert wird?
Wenn Du mit Wahrscheinlichkeit die Anzahl aller Windows XP-Installationen mit .NET im Vergleich zu solchen ohne .NET meinst, dann würde ich sie schon recht hoch schätzen. Völlig nutzlose Aussage, gebe ich zu. Ich würd mich auf nix verlassen.
Und wenn nun jemand ein Programm, dass mit C# geschrieben wurde, öffnen will und hat kein .NET, was passiert dann? Wird das Programm einfach nicht geöffnet, oder bietet der PC an, .NET aus dem Internet zu installieren oder so!?
Wenn's nicht da ist, gibts ne FileNotFoundException, weil er die Assembly nicht laden kann. Hässlich IMHO.
Aber es gibt ja zum Glück Installationsprojekte in Visual Studio:
chrische5 schrieb:
Hallo
Wenn du dir nicht sicher bist, dass .net installiert ist, solltest du ein Setup basteln, welches dies prüft und den Benutzer zur Installation auffordert oder nach Rückfrage dies selber tut. Wie hoch die Wahrscheinlichkeit ist, dass .net installiert ist, kann nur ein Wahrsager ausrechnen...
chrische
0.8238482, ich kann auch Chiromantie und Kristallomantie
Trios schrieb:
Mir ist dann aber nichts anderes eingefallen um das zu Lösen.
Das Lesen der anderen Beiträge hätte auch gereicht, da steht "was anderes" drin
hustbaer schrieb:
@Nahasapeemapetilon: dein Vergleich ist IMO total uninteressant, da im Original-Code Dinge drinnen sind die vermutlich viel viel länger dauern als ein Int64.ToString().
Hi, danke für die Antwort! Das der Vergleich im Bezug auf mein Original Code nicht relevant ist war mir schon klar, ich wollte nur mal testen wie lange die Unterschiedlichen toString-Funktionen überhaupt brauchen bzw. welche schneller oder langsamer ist.
hustbaer schrieb:
@Nahasapeemapetilon:Vermutlich werden die zwei Versionen fast gleich schnell laufen. Falls das so ist wäre meine Vermutung bestätigt, nämlich dass es nicht an Int64.ToString() liegt.
Und zu deiner 2 Vermutung hast,da du voll ins Schwarze getroffen
ich hatte vorher zwar auch so was ähnliches getestet allerdings:
....tStringA[1] = "50";...
Das war allerdings net so schlau, weil ich davon ausgegangen bin, dass die Length in den Info Objekt schon als Wert vorliegt und nicht noch irgendwie berechnet werden muss.
Naja wieder eine Erfahrung reicher
Nichtsdestotrotz, wenn irgendjemand vielleicht noch mal Lust verspürt die myToString()
zu optimieren kann er das ja mal tun. Am besten mit Begründung warum die Änderungen erfolgt sind und weshalb sie Performanter sind...da mit ich noch bisschen was dazu lerne
lg
Wenn du nur einen Wurzelknoten hast, wird das wohl .Nodes[0] sein.
Ansonsten könnte dir da noch pinvoke helfen:
http://www.pinvoke.net/default.aspx/user32/SetScrollPos.html
SG1 schrieb:
42
Danke. Genau das war es, was ich meinte. Vielen Dank für die Antwort.
Da können sich die anderen b00Ns hier mal eine Scheibe von abschneiden.
woher weisst du was da drinn ist ?
Dr GridView gibt in der entsprechenden Spalte System.Windows.Forms ....
aus.
Im Grunde ist der Button ja auch drin, wenn ich das richtig verstehe?!
Wie aber kann ich den Button selbst und eben nicht den toString() Wert abrufen?
Vielleicht sehe ich auch den Wald vor lauter Bäumen nicht mehr.
habs hin bekommen
loesung:
ein item template schreiben welches die items richtig zeichnet - und dort den ToggleButton ein namen geben - zb "Expander"
dann im trigger des items:
<DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type TreeView}}, Path=IsMouseOver}" Value="False">
<Setter Property="Visibility" Value="Hidden" TargetName="Expander" />
</DataTrigger>
nun wird es ausgeblendet wenn die maus nicht ueber dem tree ist -
fuer ein softeren fade out muss (kann) man nun noch ein storyboard definieren - das denk ich bedarf aber keiner erklaerung
Der mit dem Thread schrieb:
hustbaer schrieb:
Alles in allem würde ich sagen: bevor du anfängst irgendwelche Components zu schreiben, solltest du wohl erstmal die Grundlagen von C#, .NET und dem .NET Framework lernen.
Und du, lieber Hustbaer, solltest lernen ein Leben zu haben statt hier mit ellenlangen Posts auf Trolls zu reagieren.
re