Hallo zecken81,
wie öffnest du die Datei?
Du kannst im Konstruktor von FileStream den FileShare auf ReadWrite setzen, dann dürfte der 3D-Viewer auch weiterhin auf die Datei schreiben können.
Hallo,
mein Projekt besitzt einen StrongName. Dieses Projekt referenziert jetzt Managed Unsigned DLLs. Also habe ich mit ilMerge aus den Unsigned, Signed DLLs erstellt.
Nun gut, die neu erstellten DLLs benötigen allerdings eine Unmanaged Unsigned DLL.
Sobald ich ein Object aus der neu Signed DLL erstellen will, erhalte ich die Fehlermeldung:
Die Datei oder Assembly MeineUnmanaged, Version=1.3.2.3, Culture=neutral, PublicKeyToken=null oder eine Abhängigkeit davon wurde nicht gefunden. Eine Assembly mit starkem Namen ist erforderlich. (Ausnahme von HRESULT: 0x80131044) Ich dachte, das Problem würde nicht auftreten, wenn sich die Unmanaged DLL mit im Verzeichnis befindet, leider tritt der Fehler aber weiterhin auf.
Füge ich die Unmanaged und die Managed DLL beim ilMerge-Vorgang zusammen, erhalte ich eine Fehlermeldung, dass kein Entry Point definiert wäre...
Ich habe leider nicht die Möglichkeit, den StrongName zu entfernen, da weitere Projekte von meinem Projekt gebrauch machen, die alle einen StrongName besitzen.
Hallo Lion1984,
du könntest das PrintEvent selbst handlen und da einen PrintDialog zeigen. Dementsprechend dann das Dokument selbst auf den gewählten Drucker drucken.
- du erbst und überschreibst onpaint, um die selektion geradezubiegen.
Könnte sein, dass ich mich irre aber soweit ich weiß habe ich das schonmal versucht. Das OnPaint wird aber glaube ich garnicht ausgelöst.
Wie gesagt, ich könnte mich irren.
Hallo trib,
mit dem Control wirst du wenig weiterkommen. Das ist ein allgemeiner Bug des Controls unter Win XP. Unter Vista funktioniert das Control
Ich behaupte einfach mal, dass M$ bei der Entwicklung des Controls gepfuscht hab.
Du hast jetzt nur 3 Möglichkeiten:
Die Geschichte mit dem Control ist traurig aber was soll man machen...
Nein ich meinte das so:
MyCustomObject myObj = new MyCustomObject(); //Dieses objekt besitzt deine PrintMethode
m.Invoke(myObj, invokeArgs);
Hallo Sal,
m.Invoke(null, invokeArgs); //wirft exception: Non-static method requires a target.
Du darfst hierbei nicht null als ersten Parameter übergeben, da sonst das Programm kein Objekt hat, indem es die Methode aufrufen kann.
Du könntest dir den Konstruktor für "type" (also deinem Objekt, welches du instanziieren müsstest) geben und dann davon ein neues Objekt erstellen.
Ah ok danke, dachte man könnte mit den Bindingflags das Ergebnis einschränken...
wieder was gelernt 🙂
Hallo fadass,
die Übergabe von Flags filtert ja nur das Ergebnis, d.h. ich könnte jetzt Public-Methoden usw. ausschließen.
Das Problem allerdings ist, dass die eigenen Methoden nichtmal in einer ungefilterten Liste vorhanden sind.
Ich habe also irgendwo einen Denkfehler und warte auf Rat 🙂
//Edit: Es liegt wohl daran, dass meine Methoden private deklariert sind.
Type.GetMethods Method ()
Returns all the public methods of the current Type. Gibt es keine Möglichkeit, die private Methoden in der Klasse selbst dynamisch zu erhalten? Ich möchte nämlich eine ComboBox mit den Methoden meiner Klasse befüllen und diese dann dynamisch Invoken.
Du wirst aber class1 ändern müssen, wenn du das Event anhängen willst... woher soll denn class1 sonst wissen, was es tun soll, wenn class2 einen Event auslöst.
Hallo,
folgender QC liefert mir nur die Methoden, die eine Form schon von vornherein besitzt, nicht aber die Methoden, die ich in der Form-Klasse selbst geschrieben habe:
//this ist vom Typ MyTestForm : Form
MethodInfo[] mInfos = this.GetType().GetMethods();
Warum ist das so?
Aufbau meiner Methoden ist wie folgt:
[IsMyMethod(true)]
private string Foo() {
return "foo";
}
public bool IsMyMethod : Attribute {
private bool isMine = false;
public bool isMine {
get { return isMine; }
set { isMine = value; }
}
}
mInfos sollte doch die Methode Foo beinhalten.
Warum erstellst du in class2 nicht einfach einen Event den du in class1 anhängst. Dafür brauchst du keinen Delegaten.
(Wie das geht, ist aber Basiswissen. SuFu hilft hier auch weiter.)
Hallo s0h0,
benenne den delegaten anders, als die Methode des Events.
bsp:
public delegate void MyTextChangedDelegate(object sender, EventArgs e);
void textBox1_TextChanged(object sender, EventArgs e)
{
mu = "tschüss";
}
//Edit: Was hast du eigentlich damit vor? Einen Sinn macht das imo noch nicht.
Den Delegaten brauchst du eigentlich an dieser Stelle nicht.
Hallo liox,
Hallo Arathmar,
einfach rekursiv im UserControl durch die Controls loopen und .KeyDown += an ein eigenes Event anhängen. Da dann e.Handeled = true setzen und selbst was machen.
QM_Tool qm = new QM_Tool();
sqlcsb.DataSource = (string)qm.listBox1.SelectedItem.ToString();
Dir ist schon klar, dass "qm" leer ist und an dieser Stelle völlig falsch... Mit "qm.listBox1" greifst du auf die gerade erstellte Variable zu.
Gehört aber eher zu den Grundlagen.
Hallo olwielan,
also folgendes habe ich gerade getestet:
public static T ReadFromXml<T>(string filePath) where T : class {
T result = null;
XmlSerializer serializer = new XmlSerializer(typeof(T));
using(StreamReader reader = new StreamReader(filePath)) {
result = serializer.Deserialize(reader) as T;
}
return result;
}
public static void WriteToXml(string filePath, object writingObject) {
XmlSerializer serializer = new XmlSerializer(writingObject.GetType());
using(StreamWriter writer = new StreamWriter(filePath)) {
serializer.Serialize(writer, writingObject);
}
}
}
Das funktioniert bei mir.
//Edit: Ne klammer vergessen
Hallo Rasta,
am besten SelectedIndexChanged-Event nutzen und prüfen, ob SelectedIndex ≥ 0, dann kannst du auch auf das Item per .Items[.SelectedIndex] zugreifen.
@Lecrell: Wie kommst du darauf, dass hier ein WebControl verwendet wird? 🙂
Ach schade... wäre doch was, wenn man dadurch übernatürliche Kräfte bekommen würde 😁
Naja, ich kann schon übernatürlich gut nichts tun.
ist noch niemandem aufgefallen, dass wir den heutigen tag schon zum 17ten mal erleben?
edit: 18
edit: 19
... Dadurch, dass du weißt, dass es der gleiche Tag ist, ist es schon nichtmehr der gleiche Tag da du dich anders verhälst und damit die Zukunft änderst folglich ist es ein anderer Tag 😜
Aber das ist ein anderes Thema...
@Thema: Frage, was würde passieren, wenn sich jemand in den Strahl stellen würde?
Seavas,
Die Mehrheit wird uns Programmierer für verrückt erklären aber mir persönlich ist egal was dien anderen Leute darüber denken. Hey, nichtmal ich glaube, dass wir normal sind 😁
it diesem einfachen Code lassen sich zur Laufzeit alle checkBoxen aktivieren/deaktivieren: Stimmt nicht, da dein Aufruf nicht rekursiv ist. Setzte mal eine Checkbox in ein Panel oder eine Groupbox.
Application.Run(new MeineForm());
erzeugt einen neuen Thread, i.d.R. eben den Hauptthread der Applikation.
Gabs schon zig-tausend threads dazu... stichwort Invoke.
Ein Podcast oder WebStream zu den Experimenten wäre sicherlich interessant.
Ich habe das Gefühl, ihr seid alles die übelsten Nerds was ihr so labert 😄
Wann wollen die des ding eigentlich anwerfen??? Ich habe was vom 10. September gelesen.
@Thema:
Ach wenns doch nur so sicher wäre dass wir bei dem Versuch draufgehen... könnt ich jetzt erstmal noch schnell paar Dinge erledigen die auf der Liste "10 Dinge die ich vor dem Tod erledigen muss" stehen. (Quasi eine TODO-Liste 😄)
Naja warten wir mal ab, die Welt ist zum Millenium ja auch nicht untergegangen.
im ersten fall muss man sein handy an den pc anschließen und als modem laufen lassen...
das kostet gebühren... dem will ich eigentlich entgehen...und der zweite fall... ich will über icq messages schicken, durch mein programm...
nicht nen neuen client schreiben 🙂
Wie tscherno sagte, SMS kosten immer Gebühren. Es gibt soweit ich weiß keine kostenlose Methode (mehr).
Durch meinen Edit habe ich den Link gepostet, der beschreibt, wie du msgs via WebService verschicken kannst.
Also wenn ich nach
c# short message service
google, dann bekomme ich gleich als ersten Treffer Short Message Service (SMS) using Visual C# 2005, Visual Basic ...
Bei
c# icq
ist es dann 'leider' erst der zweite Treffer
//Edit: russisch 🙁 dann doch lieber den ersten treffer
AcrossCommunications C# Sample
Hallo djCalypso,
Falsches Forum... das wäre eher was fürs Miranda-IM Forum.
Oder man macht sich dafür Buttons in der Toolleiste 😁
tja, die lustigen Sachen die in C/C++ gingen gibts jetzt nicht mehr ... 😉 Was eigentlich Schade ist im Fall von switch.
Soweit ich weiß, kann man aber
switch (var) {
case 0:
// bisschen was
break;
case 1:
case 2:
// bisschen mehr
break;
default:
// garnix
break;
}
machen.
Hier bin mal ich (halbes Jahr altes Bild von der Cebit mit Brille.
//Mehr Pics gibts auf meiner HP
frisch aus dem urlaub 🙂 Ich war nicht im Urlaub 😜
Hallo monyc,
Na einfach ein Dictionary<string, Image> machen wobei der Key der Firmenname und Value dann das Firmenlogo ist.
Einfach beim GridView_CellClick-Event prüfen, ob das Dictionary die Value der Cell als Key enthält und entsprechend die Value aus dem Dictionary holen.
Hallo 1nf1n1ty,
ich würde das Ganze ebenfalls in einer Queue realisieren bzw. habe das schon intern für die Firma gemacht. 😁
Hmm... schade. Das 2.0 Framework ist ja bei Windows XP schon Standard. Ich hoffe du hast dich verschrieben und meinst Vista.
@DavidT: Ich glaube, dass mir da die Teammitglieder zustimmen, wenn ich sage, dass du deine Diskussion bitte in einen Extra-Thread packst.
Thema nochmal hergeholt, da ich zz. in der gleichen Situation bin wie der OP
@deemax: Wie erstellst du das PDF? Bleiben dabei die Querverweise erhalten?
Nutze atm den PDF-Creator, der kann die Links aber nicht beibehalten.
Ich hab doch da ne Und-Verknüpfung dazwischen, warum ergibt das dann immer True? 8o dir ist schon klar, dass || ein OR-Operant ist oder?
Hallo Rasta,
deine ersten beiden Abfragen ergeben eigentlich IMMER true, außer du hast deine Zwischenablage geleert...
Hallo IceOnly,
erst suchen, dann googlen, dann fragen...
Named pipes issue: WaitForConnection hangs around indefinitely
Ok, danke für den Hinweis.
Habe mich ja vorher schon mit XmlSerialzation auseinander gesetzt und da hatte es ja auch geklappt. Das Problem lag woanders. Die BackupDatei die ich einlesen wollte, stammte aus einem früheren BackupVerfahren 🤔
Hallo,
ich bin gerade dabei eine BackUp-Funktion für eigene Objekte zu schreiben.
Habe dafür ien BackUp-Objekt mit verschiedenen Properties. Das BackUp-Objekt wird Serialisiert und Deserialisiert.
Das Problem hierbei ist, dass sich das Objekt ändern kann. Somit könnte ich z. B. eine ältere Version des BackUps nicht wiederherstellen, falls ich etwas am Objekt ändere (Bsp: neue Properties hinzufügen...).
Gibt es per Serialization eine Möglichkeit, die verwendete Methodik auch für ältere Versionsobjekte kompatibel zu machen, ohne die alten Objektklassen beibehalten zu müssen?
Mit try/catch zu arbeiten, ist eh keine gute Lösung imo. Man sollte try/catch nur in einzelfällen verwenden (z.B. bei Transaktionen mit der DB). Eben da, wo man den Fehler nicht selbst 100%ig vermeiden kann.
Zum Exception-Handling mit Anzeige der Fehlermeldung bitte meinen ersten Post beachten.
Hallo Durst,
auf keinen Fall den Xml-Text per Hand zusammenfügen. Arbeite da lieber mit XmlAttribute, wenn du schon XmlNode verwendest -> XmlNode.Attributes
Hallo philatm,
Erstelle ich jetzt für jeden Fehler eine eigene Exception? Auf keinen Fall. Eigene Exceptions solltest du vermeiden oder nur dann erstellen, wenn die vorgefertigten Exceptions nicht zum Fehler passen. Siehe dazu verschiedene Artikel zu Exception Design Guidelines.
Eine Methode wäre natürlich, Application.ThreadException abzufangen und selbst zu handlen. Da kannst du ja ein eigenes Fenster anzeigen lassen.
//Edit: EventNamen korrigiert
Das beste ist, dieses Gerät wird heute noch mit Windows XP betrieben, nur für Office aber OK 8o wie zum Henker bekommst du bitte auf so einem Rechner XP zum laufen?
Hallo VerenaThiebus,
if(strVar == strVar.ToUpper())
Console.WriteLine("Die Eingabe ist gross geschrieben");
Was ich mich bei sowas immer Frage:
Wozu braucht man 1120GB Festplatte?
Ich hab ne Filmsammlung von ca. 300 GB, Musik ca. 24 GB, Spiele Programme usw, gesicherte CDs/DVDs, Datensicherung
Ich erweitere meine Multimediasammlung gerne. Sodass ich später mir einen zweiten Rechner kaufe, den ich als Wohnzimmer PC umbaue oder mir nen Server in Keller stelle da alles drauf und per WLAN ins Wohnzimmer streamen 😉 Oha da outet sich ein Raubkopierer 😜
Ab und zu auch mal Charts wenn was wirklich neues & gutes dabei ist ...
Wirklich neu sind die Sachen im Radio ja meist leider nicht, als würden die Ideen ausgehen..Dauernd wird alles zum 5. Mal gevoered... Richtig. Ich sehe auch oft Songs in den deutschen Charts, die ich schon vor einem halber Jahr gehört habe, eben bevor eine Band so richtig erfolgreich ist. Finde es einfach schade, es gibt so viele Gute Musik, die niemand kennt. Wird eine Band allerdings entdeckt, dann wird nurnoch auf Profit geachtet.
Hat man ja bei Limp Bizkit und Linkin Park gesehen. Die ersten Alben waren einfach nur genial, die neuesten totaler Schrott...
Höre zu 90% nicht-kommerzielle Musik. Geht in die Richtung Rock, wobei das Spektrum da sehr weit ist. (Screamo, Emocore, Metalcore, Nu Metal, Indy, Alternative)