Laden...

Forenbeiträge von Seikilos Ingesamt 753 Beiträge

15.01.2007 - 19:22 Uhr

Mh, das habe ich getan, ich verstehe dort nur nichts, ist ne menge wuseliger Shell Code mitbei, den ich nicht wirklich verstehe.

Aber wonach könnte man überhaupt suchen?
Ins Internet will auf einmal der svhost des Programms, aber Live Id oder sonstiges kommt nicht im Code vor, auch nichts mit Network

15.01.2007 - 19:00 Uhr

Ich hab diese Komponenten gefunden und sie ist großartig: http://www.codeproject.com/cs/miscctrl/foldertreeview.asp?msg=1840300&mode=all&userid=3600656#xx1840300xx

Nur hab ich das Problem, dass wenn ich auf Netzwerkumgebung klicke, das Teil sich mit der Microsoft Live ID Seite verbinden will und meine Live ID haben will, erlaube ich es, bekomm ich einen Login für die Id, erlaube ich das nicht, ist die Anwendung hin, ich sehe nur immer das Wiederholen fenster, weil die Verbindung nicht geklappt hat.
woran liegt das ?

11.01.2007 - 23:07 Uhr

Jau, meine Finger sollten nicht an die WinApi 🙂

Und wie kommt man denn im Treeview sauber an die jeweiligen Icons der Objekte?

11.01.2007 - 22:57 Uhr

Hi,
sorry, habs editiert, ich meine den Folderbrowser und dazu gibts nichts.
Ich hab einige Ctrl auf codeproject gefunden, die sind aber alle nicht wirklich gut

11.01.2007 - 21:27 Uhr

Es scheint ja, so, als gibts keinen Weg, den FolderBrowser Dialog nach seinem Willen zu modifizieren ist, was schade ist.
Auch zeigt mir http://www.codeproject.com/cs/miscctrl/ExtendedFolderBrowser.asp nicht wirklich, wie ich den Dialog erweitern kann.
Und an WinApi trau ich mich nicht ran
Nun würd ich wohl das Ding selber Nachbauen, aber gibt es denn eine Komponente, die mir Ordner anzeigen kann? Ich mein, quasi die klickbare Komponente mit den Icons usw , die der FolderBrowser hat, ohne das Teil wirds witzlos sein, es nachzubauen.
Leider find ich ein solches controll nicht

11.01.2007 - 20:12 Uhr

Ich verstehe das richtig, dass XMLDocument ansich keine Linebreaks hat, korrekt?
Ich hol mir den Text mit doc.innerXML, ergo wird da keine Formatierung drin sein, aber ist es mögich diese zu bekommen? Ohne einen TextWriter oder ähnliches?

11.01.2007 - 19:43 Uhr

Abgesehen von dem unterschied der initliaiserung usw, wofür ist out und ref sonst gut? Ich mein alle komplexen Datentypen werden ja by reference übergeben, wofür dann out und ref? Oder sind die Dinger nur noch für bool, byte, int usw zu gebrauchen?

11.01.2007 - 16:20 Uhr

Super!
Danke

Edit: Moment, wieso Writer? Ich hab nur den XMLDoc und hol mir die werte mit xmldoc.innerXML

11.01.2007 - 12:22 Uhr

Wie kann ich denn mit XMLDoc Dateien schreiben, die Linebreaks haben, damit ich die XML Struktur auch in einem Txt Editor lesen kann?

10.01.2007 - 12:19 Uhr

Das ist ja "einfach" 😁 Danke

10.01.2007 - 07:58 Uhr

Ja muss ich wohl, wenn ich keinen weg finde, den memorystream zu lesen

09.01.2007 - 21:45 Uhr

Ehm, was davon kann ich dann als String benutzen?
Ich sehe bei dem Memorystream nichts, was mir den Inhalt ausgibt, außer Flush, aber das hat den rückgabetyp void.
Zum XmlDoc, ist nett, aber ich müsste ne Menge umschreiben

09.01.2007 - 21:43 Uhr

Soweit ich das immer gelesen habe, scheinendie Dinger sealed zu sein, ich hab schon eine Lösung für openfiledialog bei codeprojects gefunden, aber nichts für folderdialog

09.01.2007 - 18:49 Uhr

Gibts irgendein Winapi Call oder so, mit dem ich ein Programm als anderer Benutzer mit Passwort ausführe? Wobei ich natürlich Name und Passwort bereits weiß

09.01.2007 - 17:52 Uhr

Ich möchte im Grunde XML Schreiben, nur es nicht sofort ausgeben, ich weiß bereits, wie man mit dem XMLTextWriter XML erzeugt, nur will dieser eine Datei oder Stream.
Was ich aber suche, ist eine Möglichkeit einen XML Writer zu nutzen, und am Ende den Text als Stringvariable zu haben, ohne dass dieser Text schon in eine Datei geschrieben worden ist.

09.01.2007 - 14:25 Uhr

Ich hab n Dialog mit einer unmenge an einstellungen, nun benutze ich aber einen erweiterten dialog und würde ungerne alle eigenschaften zeilenweise per hand kopieren.
Es klappt leider auchnicht dialog.OpenDialog = alterDialog.OpenDialog, weil er schreibgeschützt ist. Gibt es da nen anderen weg?
Oder müsst ich mit collections die eigenschaften durchwühlen?

09.01.2007 - 12:29 Uhr

Es lief ja meist darauf hinaus, dass ich Winapi nutzen muss, um die Dialoge zu modifizieren, ist das auch der fall, wenn man eine checkbox mehr haben will?
Wenn ja, wie würde man denn den dialog modifizieren? Und wie erfährt man, im Programm, was aus der checkbox geworden ist?

06.01.2007 - 10:02 Uhr

Ich hab es ja teilweise lösen können, wenn bedingung nicht zutrifft, überspringe den Code, das funktioniert, erzeugt aber wiederum im EBNF Teil einen Fehler, weil ja nach einer "{" Ereignis erwartet wird, aber keins kommt.

Das mit dem Buch muss ich mit meinem Prof klären

06.01.2007 - 09:45 Uhr

Nicht ganz billig das Ding 🙂

heribvore, Coco hangelt sich entlang eines EBNF Text entlang und kann gleichzeitig C# ausführen.

Im Grunde ist das kein erst prüfen dann parsen, sondern simultanes arbeiten

06.01.2007 - 09:18 Uhr

Ich wurschtel ja noch mit Coco rum und habe massive Probleme mir Bedingungen.
In EBNF ist es kein Problem zu sagen


IfStatement = "if" "(" Bedingung ")" "{" Ausdruck "}"
Bedingung = ...
Ausdruck = ...

Aber wie kann man sowas mit Code logisch hinterlegen?
Man hat einen Parsing Automaten, der parst dir sowas wie


if(a<b){
sag "hallo"
}

Syntaktisch richtig, aber würde man sowas ausführen, würde er prüfen und dann in jedem Fall sag "hallo" ausführen, weil EBNF ja nur die Syntax ist.
Aber wie kann man sowas mit dem Semantischen Inhalt verknüpfen? Da komme ich beim besten Willen nicht dahinter, alles in den Klammern muss ja quasi vom semantischen Teil bearbeitet, oder ignoriert werden.

03.01.2007 - 18:29 Uhr

Ja, aber kann ich das bestehende Projekt in ein solches ändern?

03.01.2007 - 18:07 Uhr

Noch was zur verständnis, wie kann man denn if Konditionen verarbeiten?
Ich mein, ich krieg einen gültigen Parser wohl hin, der auf "==" prüft usw und so fort, aber wenn ich sowas habe wie


ausgabenachricht("blah");
if(2==2){
 ausgabenachricht("zweites blah");
}

Dann ist es syntaktisch richtig, aber ich bekomme immer zweimal die ausgabenachricht.
Ich mein ich kann ja mit (. .) Code einschieben, aber wie kann ich damit denn den ausgabefluss steuern?

Dann hab ich bei der Expression irgendwas mit (. if (t.val==la.val) .)
aber was weiter? return?

03.01.2007 - 17:51 Uhr

Argh!
Danke,aber warum muss ich die ersten beiden gruppieren?
Ist das von der Logik nicht gleich?
Oder denkt er aufgrund der fehlenden Klammer
(letter) ODER (digit{letter|digit}) ?

03.01.2007 - 17:41 Uhr

Ich schmier ja mit Coco rum und hab zwar richtige EBNF Syntax, aber irgendwie scheint bei mir ein Fehler in der Logik drin zu sein, den ich nicht lösen kann.
Ich habe folgendes

CHARACTERS

	letter             = 'A' .. 'Z' + 'a' .. 'z' + '_'.
	digit              = "0123456789".
TOKENS
	ident		   = letter|digit{letter|digit}.

Das besagt doch, dass ich aus idents beliebig lange Konstrukte aus letter und digit machen kann, oder?

Nun habe ich bei einem anderen Codeteil folgendes

Test1 												/*Generate dictionary of strings*/ 
														(. String key, value;.)
			
		=  	Variable<out key, out value>
	.
	
	Variable<out String key, out String value>	
		= 	Key<out key>"="Value<out value> 
Key<out String key> 
		= ident  										(. key=t.val; .)
	.

	Value<out String value> 							(. value=la.val; .)
		= ident 										
		
	.

Ich will also eine Zuweisung machen, aber der Compiler meckert bei dem Text, den er in C# Parsen will (von EBNF scheint es zu gehen:

vergleichswert = 20

Was ich meine ist, dass er die Zeile durchaus als Variable erkennt, jedoch als Key v und als Value e nimmt, also bei dem ersten Zeichen schon aufhört, aber wieso? Key ist doch ein ident, ergo 1 bis beliebig viele Zeichen, aber warum wird da das nichts zwischen v und e als "=" erkannt?
Also der Parser denkt, dass zwischen v und e ein Terminalsymbol steht.

Meckern tut der Compiler aber:

-- line 1 col 2: "=" expected

Er will also ein =, aber warum? Es ist doch möglich, das Key länger als ein zeichen ist

03.01.2007 - 16:25 Uhr

Ich finde leider in den Einstellungen nichts darüber, wie ich in einem bereits erstellten Projekt das Framework von dotNet 2.0 auf CF umstellen kann.
Geht das überhaupt so leicht?

28.12.2006 - 17:38 Uhr

Hallo,
mir geht es genauso, ich suche ein Event oder ähnliches, was mir sagt, ob das Lied gerade zu ende gespielt worden ist, oder nicht.
Im Moment sehe ich da nur die Möglichkeit zu vergleichen ob getcurrentPos == getLength ist

28.12.2006 - 15:20 Uhr

Hab ich befürchtet, da kann ich mir das Ding auch gleich selber bauen 🙂

Naja, im Grunde soll das so ein Fortschrittsbalken sein, wie bei Audio Playern, Winamp usw, vielleicht gibts da ja was besseres

28.12.2006 - 15:08 Uhr

Ich brauche die Progressbar mit dem Stil durchgehend, aber er funktioniert so nicht, es bleiben blöcke, ok, hier gesucht, und gelesen, dass es was mit den VisualStyles zutun hat, in der Hilfe steht auch, dass es nur geht, wenn die visualstyles von application nicht aktiviert worden sind.
Gut das habe ich nicht getan, dennoch funktioniert es nicht.

28.12.2006 - 13:45 Uhr

Ich würde ganz gerne den Splitter von einem Splitcontainer mit einem Border versehen, aber ich komme nicht an den Splitter, ich finde keine Accessmethode dafür.
Alterativ wollte ich einen eigenen Splitter einsetzen, aber ich hab nicht begriffen, wie ich im Code das verhältnis der beiden Panels verändern kann.
Im Grunde will ich nur, dass panel 2 kollabiert oder auf seine normale größe gesetzt wird

28.12.2006 - 11:06 Uhr

Ahja, danke, da bin ich schon drüber gestollpert, aber was ich da nicht gefunden habe, ist ob es eine Möglichkeit gibt, so ein Event in ein User Control einzubauen, dass es bei den Ereignissen auftaucht.

Edit: Ach, klappt ja doch, nur taucht es im User Control selbst nicht auf, sondern erst, wenn man die Komponente in eine Form draggt.

Danke

27.12.2006 - 19:14 Uhr

Ich weiß wie man den Events der Objekte handler zuweist nur finde ich entweder den Ansatz nicht oder ich übersehe etwas (🙂), denn ich suche eine Möglichkeit, einem Objekt eigene Events zu geben, vielleicht sowas wie tuWas und die Auslöser Methode onTuWas.
Einfach einen Listener zuweisen kann ich ja nicht, weil dann kommt die Meldung dass Ereignis objekt.tuWas nicht existiert.

27.12.2006 - 19:09 Uhr

Ich hab ein paar generelle Frage zu dem Thema.

Sznenario: Ich habe eine Komponente geschrieben, welche unter anderem ein Label beinhaltet.
Diese Komponente ansich braucht kein Drag&Drop.
Ich füge diese Komponente in eine Form ein und möchte in der Form Drag&Drop benutzen. Die Frage ist, was müsste die Komponente liefern um Drag&Drop zu ermöglichen? Die Komponente wird später fertig kompiliert vorliegen, also man kann sie nicht pausenlos erweitern(soll man auch nicht) nur sollte die Drag&Drop Möglichkeit vorhanden sein.
Wie erreicht man nun diese Optionalität am einfachsten?

Edit, achja, ich kenne das Kapitel im Openbook von Galileo darüber

15.12.2006 - 07:30 Uhr

Ehm, ja das hab ich auch so gelöst, danke 🙂
Wenn beides ident ist, gibts da nur probleme mit 🙂

14.12.2006 - 18:55 Uhr

Ich hab in EBNF eine derartige Produktion

Test1 	=  	Variable Output.
	Variable    = ident"="ident 
		.
	Output =  ident .

Das Ding soll im Grunde nur eine Variable definieren, ident ist vom Typ String usw und sofort.
Die Sprache ist LL 1 und hat einen Token, also das erkannte Zeichen und ein Lookahead, aber wenn ich dies mit dem Ding da oben parse:
horst=algo
Warum ist bei mir in dem Fall algo der Token und lookahead ist horst?
LL1 geht doch von Links nach Rechts, ergo müsste dies doch andersrum sein

13.12.2006 - 12:17 Uhr

Ehm das Problem taucht nicht beim Starten auf, sondern wenn ich meine Komponente in die Form schiebe.
Und es liegt oben an der Zeile

13.12.2006 - 08:22 Uhr

Teste ich, danke.
Aber wie ich oben gepostet habe, liegt das Problem wirklich an dieser einen Zeile
und ich hab nicht die geringste Ahnung, wieso

12.12.2006 - 22:55 Uhr

OMG, was ist mit dieser IDE los?

Ich dragge die Komponente in die Form und bekomme eine Message Box mit "Paramter not valid", keine Exception,nichts beim Kompilieren, keine Message oder Warning, garnichts, nur diese Meldung!
Wie bitte soll man so arbeiten? Was soll das für ne Fehlermeldung sein, da hilft mir die Speicheradresse, wo das passiert ist ja mehr.

Kann mir da einer zu was sagen?

Edit, mit Bildanhang, Komponente gelöscht und wieder reingedragt und das ist der Grund!
Das ist ein Scherz? Hab ich die Mindestanzahl der Elemente in der Liste unterschritten?
Und ich hab auch versucht alles zu ReBuilden, aber siehe Bild.
Ich hab nicht zufällig einen Bug gefunden?

12.12.2006 - 10:49 Uhr

Habe ich gelesen, aber was soll ich da plazieren? Ein unsichtbares label? Das ist ja irgendwie kein eleganter Workaround und aus deinem Link dort.
Bei mir ist testweise Autoscroll=true und ich male in ein Panel, aber es tauchen keine Scrollbalken auf, obwohl dort definitiv mehr gezeichnet wird, als nur sichtbar ist

12.12.2006 - 10:43 Uhr

Ehm ja, Scrollen mit was denn?
Also die Variante mit externem Scrollbalken ist netter, wenn auch mehr Aufwand, aber was Scroll ich denn?
Wenn ich panel1.VerticalScroll.Value nehme, flackert der Scrollbalken im Panel selber drin und der soll ja wenn externer da ist, garnicht flackern

12.12.2006 - 10:32 Uhr

Ich versuche schon seit Wochen Panels zu verstehen, aber entweder bin ich der einzige mit dem Problem, oder die anderen benutzen die Dinger nicht wirklch.

Folgendes Szenario:
Leere Form, darauf schieb ich ein Panel(alle Einstellungen default, es hat keine vertikale Scroll leiste.
Ich will diese aber immer haben, daher gehe ich in die Designer.cs Datei, die also vom Designer erstellt wird und füge dort einfach


this.panel1.VerticalScroll.Visible=true;

Und die Komponente hat in der Form1 aufeinmal den Scrollbalken, soweit so gut, er ist zwar im Moment sinnlos, aber da.
Jetzt zum Problem, ich dragge in das Panel einen Button rein, der zu einem Teil im Panel verschwindet und vertikal gescrollt werden muss.
Der VerticalScroll eintrag verschwindet aus der Designer.cs, schade drum.
Nun packen wir in das Form1_Load einfch nur


panel1.VerticalScroll.Value = 90;

Starten, und siehe da, es geht, der Button und Panel wurden gescrollt, doof ist nur, dass der Scrollbalken weg ist.
Wir fügen den einfach in das Form1_Load rein, da steht jetzt.


panel1.VerticalScroll.Visible = true;
panel1.VerticalScroll.Value = 90;

Starten und sehen, dass garnichts passiert, weder der Scroller ist aufgetaucht, noch wurde gescrollt.
Setze ich den Button aber so in das Panel, dass nicht gescroll wird, so taucht der Scroller auf einmal wieder auf.
Kann mir irgendjemand dieses Verhalten sinnvoll erklären? Es überrascht mich, dass Panels ein solch merkwürdiges Verhalten an den Tag legen, nur leider kann ich auf nichts anderes ausweichen, leider brauch ich aber auch den Scroll permanent präsent.

Und ein kleiner Nachtrag, der zwar sinnlos ist, wenn das da oben nicht geht, aber kann ich das Panel scrollen, wenn keine Elemente drauf sind? Ich hab versucht ClientSize zu vergrößern, aber da tut sich nichts, im Grunde habe ich nur vor, auf das Panel zu malen, es muss aber explizit Scrollbar sein, weil es nicht in den Sichtbereich passt

12.12.2006 - 10:23 Uhr

Ehm, ja ich weiß, was die Probleme beim Serializieren im allgemein sind.
Aber super, das hilft mir im Moment wesendlich weiter.

Danke

12.12.2006 - 10:19 Uhr

Das bedeutet als alternative,[Serializable] rein und von Soap die Methoden überschreiben?

12.12.2006 - 10:11 Uhr

Ja, ich erinnere mich an die Beschreibung, da stand oft Serializable, aber warum will der Designer auf einmal bei der User Control das Ding serialisieren und wenn es normal in einer Form vorkommt nicht?

12.12.2006 - 10:06 Uhr

Oh ha!
Das funktioniert.

Herzlichen Dank!

Aber auf sowas wäre ich ja niemals gekommen.
Was heißt das überhaupt, warum will der Designer mein Objekt serializieren?
Und sind sonst Strings und alles andere, was in eine List kkommt und im Designer dargestellt ist prinzipiell Serializable? Wenn ja, sollte ich das auch probieren, oder gibt das keine Vorteile? Ich hab nämlich nicht vor die Liste oder den Typ in dem Fall zu serialisieren

11.12.2006 - 22:10 Uhr

Ehm, ich komme der Spur langsam näher, verstehe aber nicht, was das Problem ist.
Auftauchen tut die Zeile, wenn ich folgendes habe


private List<MyColorObject> myClrObjects
public List<MyColorObject> clrObjects
        {
            get { return myClrObjects; }
            set { myClrObjects = value; }
        }
//Und später irgendwo
clrObjects = new List<MyColorObject>();

Was soll das heißen? Das List nur serialisierbare Objekte nimmt, oder wie darf ich das verstehen?

Ich hab in einem anderen Projekt auch eine List<Lied> wo lied eine eigene Klasse ist, aber sie ist nicht abstract, noch kommt diese Serialize Meldung.

Edit: Sehr verwirrend, lasse ich die Public Methode weg, so kommt diese serialize Meldung nicht, ist die Methode da, so wirft diese, auch ohne genutzt zu werden, diesen serialize error.
Es passiert auch nur in einem Projekt, wo ich ein UserControl zu einer Form1 TestForm hinzufügen will, dann bekomme ich immer diesen Code Generation Error

11.12.2006 - 21:08 Uhr

Danke, guck ich mir an, aber jemand anderes hat mir einen Compiler generator gegeben, der hilft auch.
Und so bald ich das Fehlermeldungsproblmechen gelöst habe (grr) guck ich mir das Terrarium genauer an.

danke

11.12.2006 - 20:57 Uhr

Ehm, ich beiß mir in den Hintern, was soll dass nur.

Siehe Screen, ich habe das MyColorObject umbenannt und die Verweise nicht upgedated, siehe screen halt, Projekt Rebuild, aber er erkennt die Klasse immernoch und meckert immernoch wegen irgendwelchem Serialize zeug...

Eh, edit, na klar, die Klasse hieß noch so, aber kann mir keiner helfen?
Ich hab die mycolorobject nachträglich in ein UserControl Projekt hinzugefügt, was kann denn da diese Fehler erzeugen?
Es liegt wohl kaum an den virtuellen methoden, oder?

Der Fehler wird duch

clrObjects = new List<MyColorObject>();

erzeugt, aber warum? Ich meine, was ist daran so falsch?
An abstract liegts wohl nicht, aber warum kann ich diese klasse nicht initiasieren?

10.12.2006 - 20:00 Uhr

Hatte ich schon, vor allem ist es verwunderlich, da die Assembly schon vorher da war und später erst das MyColor ding

10.12.2006 - 19:55 Uhr

Ja aber das kann nicht sein, ich habe dieses clrObject aus allem gelöscht, dennoch kommt der Fehler.
Es gibt kein Remote, kein garnichts, dass ist im Moment nur eine simple Komponente, kein stück mit serialize oder network.
Und wieso kommt der Fehler, obwohl das Object nicht mehr da ist

10.12.2006 - 17:55 Uhr

Ja aber ich serialisiere doch nicht.
Hab nichts damit am hut, nirgends Serializable Marker oder sowas.
Und keine Ahnung woher das kommt