Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Portal
  • |
  • Mitglieder
Beiträge von rollerfreak2
Thema: .Net User Settings Versionierung
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Danke euch!

Thema: .Net User Settings Versionierung
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hallo zusammen,

ich habe eine allgemeine Frage bezüglich der .Net User Settings. Angenommen ich habe eine UI in der der User einige Settings vornehmen kann. Einige davon bündel ich in einem String und habe dafür einen Converter (in beide Richtungen). Wenn ich jetzt das Tool mit V1.0.0.0 ausliefere und der User ändert dieses Setting konsistent dann wird es bei ihm auf dem Rechner gespeichert. Bei jedem weiteren Start hat der User seine gespeicherten Settings. So weit so klar. Wenn ich nun was an der Ablage ändere bzw. die UI erweitere und eine neue Version raus veröffentliche z.B. V1.0.1.0 kann es dann bei dem User zu einen Absturz zur Laufzeit kommen weil der Converter für die Settings sich geändert hat? Oder sind die Settings Versionsabhängig?

Im Fall die Settings bleiben auch über Versionen auf dem Zielrechner erhalten kann ich die irgendwie löschen oder aber eine Versionsnummer innerhalb des Settings Files hoch zählen sodass .Net selber erkennt das es die Default Settings laden muss?

Vielen Dank im voraus!

Thema: Dokumentation Settings mit Sandcastle Help File Builder
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hi weimat,

schau mal ob NDoc das richtige für dich ist. Ansonsten schau mal in die Sandcastle Docu.

Thema: Debugger Returnwert im Visual Studio Anzeigen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hallo gfoidl

danke für die Infos!

Grüße rollerfreak2

Thema: Debugger Returnwert im Visual Studio Anzeigen
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hi zusammen,

vielleicht weiß das einer von euch. Gibt es einen Trick wenn ich im VS2010 mit dem Stackpointer hinter dem return (...) stehe den Wert anzeigen zu lassen der dann auf den Stack gepushed wird? Ich weiß ich könnte zwar in das WatchWindow die Methode so aufrufen und dann den Wert checken aber es gibt doch sicherlich einen komfortableren Weg!?

Danke vorab!

Thema: Fehler oder gewolltes Verhalten in Convert.ChangeType(object, Type)
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Zitat
Doch, denn du versuchst hier einen short in einen IConvertible zu casten, und das geht eben nicht.
Es wird hier nicht noch irgendeine Funktion aufgerufen, sondern der im code stehende feste cast macht die Exception.

Das ist nicht richtig! Int16 implementiert definiv IConvertible. Du kannst auch gern folgenden Code nehmen der erzeugt ebenfalls oben beschriebene Exception!


//das geht definitv
IConvertible convertible = (IConvertible)((System.Int16)5);
//das hier erzeugt oben beschrieben Exception
object obj = Convert.ChangeType((System.Int16)5, typeof(IConvertible));

Aus meiner Sicht also ein Fehler vom Framework zumindest stimmt die Exception nicht!
Zitat
Auch wenn du die frage nicht hören willst, wozu soll das ganze denn dienen?

Wir haben eine Klasse die hat eine T GetValue<T>() Methode. Diese nutzt intern Convert.ChangeType je nachdem was T halt ist. Wenn man nun folgendes macht dann geht das nicht:


IConvertible convertible = member.GetValue<IConvertible>();

Das wiederum geht:


//hier kommt dann ein Int (default) zurück
IConvertible convertible = (IConvertible)member.GetValue<object>();

Die zweite Schreibweise ist aber a.M.S Quatsch, dient halt nur dazu die Exception zu umgehen!

Thema: Fehler oder gewolltes Verhalten in Convert.ChangeType(object, Type)
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hi,

ich habe was interessantes entdeckt und wollte euch mal Fragen ob das Verhalten so gewollt oder eher ein Fehler ist. Vorab der Code scheint so wie ich ihn jetzt schreibe sinnfrei, aber in unserem Fall ergibt das schon Sinn weil wir eine Methode haben die an einem T DataMember.GetValue<T>() implementiert. Im GetValue wird dann in verschiedenen Arten Convert.ChangeType(object, Type) aufgerufen.


IConvertible convertible = (IConvertible)Convert.ChangeType((long)5, typeof(object));
object obj = Convert.ChangeType((IConvertible)5, typeof(IConvertible));

Die erste Zeile geht zur Laufzeit aber die 2te wirft eine Exception die folgend lautet.
Fehler
Invalid cast from 'System.Int32' to 'System.IConvertible'.

Die Meldung ist natürlich so nicht richtig und ich bin mal auf die Suche gegangen! Also im ChangeType wird das short in IConvertible gecastet und dann ganz unten wird return convertible.ToType(conversionType, provider); gerufen. Das wiederum geht dann auf object IConvertible.ToType(Type type, IFormatProvider provider)
das dann wiederrum Convert.DefaultToType(this, type, provider); called.

Nun steht in dieser Method oben die Abfrage


internal static object DefaultToType(IConvertible value, Type targetType, IFormatProvider provider)
{
    if (targetType == null)
    {
        throw new ArgumentNullException("targetType");
    }
    if (value.GetType() == targetType)
    {
        return value;
    }
.....
.....
throw new InvalidCastException(string.Format(CultureInfo.CurrentCulture, Environment.GetResourceString("InvalidCast_FromTo"), new object[] { value.GetType().FullName, targetType.FullName }));

Die Abfrage value.GetType() == targetType liefert natürlich false weil GetType() short bzw. Int16 zurücl liefert. Aus meiner Sicht ist dort ein Fehler weil die Abfrage prüfen müsste ob der Typ von dem value.GetType() implementiert wird.

Also Fehler oder gewolltest Verhalten! In der MSDN steht zu der InvalidCastException nur folgendes:
Zitat
This conversion is not supported.

-or-

value is null and conversionType is a value type.

-or-

value does not implement the IConvertible interface.

Thema: TFS Gates Checkin(s) Automerge Problem (nicht parallelisiert)
Am im Forum: Entwicklungs- und Laufzeitumgebung (Infrastruktur)

Hi zusammen,

wir in unseren Projekt haben ein kleines Workflow Problem mit Gated Checkins und dem TFS. Ich erklär mal kurz ein Scenario bei dem wir immer (logischer weise) Automerge Konflikte bekommen. Vielleicht habt ihr eine Idee wir man sowas "automatisiert" in den Griff bekommen kann.

Entwickler A:
Projekt A.csproj
-> Add class1.cs
-> Add class2.cs
-> Remove class3.cs
-> Edit ....
-> Edit ....
-> Edit ....

Jetzt Checked er es auf den Agend als Gated Checkin ein und der Job kommt in die Queue. Nehmen wir mal an die ist leer d.h. er ist als erster dran!

Entwickler B:
Projekt A.csproj
-> Add class4.cs
-> Add class5.cs
-> Remove class8.cs
-> Edit ....
-> Edit ....
-> Edit ....

Jetzt Checked er es auch ein und der Job steht auf wait weil der erste Gated Checkin noch läuft. Bei Entwickler B hat auch alles lokal gebaut und alles Tests waren grün. Wenn der 1te Gated Checkin jetzt drin ist und der 2te beginnt dann kommt es auf dem Agend zum Merge Konflikt weil er mittlerweile A.csproj nicht mehr Auto mergen kann!

Solche Scenarien haben wir häufig und derzeit können wir sowas nur unterbinden wenn wir uns selber "synchonisieren". Unser Team ist aber sehr groß und deswegen ist das nicht ganz so leicht.

Deswegen hat einer von euch eine Idee wie man sowas im Prozess unterbinden kann bzw. sogar im TFS im vorhinein abfangen kann? Z.b. die GatedCheckins mit dem laufenden zu validieren etc.

Danke im voraus!

Thema: C# Parser um über Kommentare zu iterieren
Am im Forum: Rund um die Programmierung

Danke dir!

Thema: C# Parser um über Kommentare zu iterieren
Am im Forum: Rund um die Programmierung

Hi zusammen,

ich muss alle Kommentare eines C# Source Files analysieren. Ich weiß das ich das recht schnell mit einem Regex implementieren kann. Ich denke aber es gibt sicher einen Parser der das für mich übernimmt und mir anschließend die Möglichkeit gibt über die Kommentare zu iterieren.

Kennt einer von euch so einen Parser der genau das macht?

Thema: Suche TabControl um Tab mit [x] zu schließen und mit [+] hinzuzufügen
Am im Forum: GUI: Windows-Forms

Hi,

ich suche ein TabControl das so ähnlich funktioniert wie das beim IE8 bzw. Firefox. Hab auch CodeProject leider nichtg passendes gefunden. Man kann sowas zwar auch selber implementieren jedoch wollte ich mal fragen vielleicht gibt es sowas ja schon.

Edit: Hab ein ganz brauchbares gefunden! FireFox-like Tab Control

Thema: Prüfen ob Windows "vollständig" gestartet ist
Am im Forum: Rund um die Programmierung

Sieht so aus, ich hätte halt gedacht es gebe irgend ein Systemevent oder ähnliches um das zu checken. Dann werde ich wohl auf die besagten Conditions checken müssen!

Thema: Prüfen ob Windows "vollständig" gestartet ist
Am im Forum: Rund um die Programmierung

Naja ich empfand das als einfacher als zu prüfen ob der TFS Service bzw. ein TFS Server erreichbar ist sowie ein Netzlaufwerk. Und beide Eigenschaften sind halt erfültt wenn das Windows follständig geladen ist, zumindets auf den Rechnern wo die Application installiert werden soll!

Thema: Prüfen ob Windows "vollständig" gestartet ist
Am im Forum: Rund um die Programmierung

Hallo zusammen,

gibt es irgendeine Möglichkeit bei Start einer Application (liegt im Autostart) festzustellen ob Windows mit dem Bootvogang fertig ist? Würde halt ungern einen Timer einbauen der einfach 2 Minuten wartet.

Eventuell kann man irgendwie die Priorität der Autorun in der Registry beeinflussen? Hab dazu aber bis jetzt nichts gefunden!

Der Key liegt bei: HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run

Thema: Lesen von CustomDestinations-ms Dateien
Am im Forum: Rund um die Programmierung

Ich kann es ja mal versuchen zu erklären. Hat etwas mit JumpList CustomCategory Listenverwaltung zu tun. Ich habe eine JumpList (JL) (WindowsCodePackAPI) welche in der ich CustomCategories (CG) anzeige. Die verwalte ich selber in einer XML Datei. Das heißt ich checke ob ein Element neu hinzugekommen ist und trage es in die XML ein (mit IconPath,Argument, etc.). Das funktioniert auch wunderbar. Das Problem ist jetzt wenn ein User ein Element aus der JL via Rechtsklick entfernt. Wenn dann das Tool wieder gestartet wird dann habe ich zwar in der JL.RemovedDestinations ein Element drin aber der String ist null! Ich muss das Element nämlich aus meiner XML entfernen sonst spinnt die JL rum. Wenn ich einfach wieder alle Elemente der JL hinzufüge dann werden gar keine mehr angezeigt.

Meine 2te Idee war jetzt folgende. Nehmen wir mal an ich habe 2 CG mit jeweils einem Element also E1 und E2 in der XML. Jetzt entfernt der User E1 aus der JL. Nun startet er das Tool wieder mit E2. Zu beginn melde ich mich am ItemRemove Event an und füge einfach alle Element der JL hinzu die ich in der XML finde. Also E1 und E2. Dann rufe ich Refresh auf. Nun bekomme ich für ein Element (E1) ein Item Remove Event wo mir der Pfad des JumpListLink mitgegeben wird was der User entfernt hatte (E1). Problem nur ist das natürlich alle Element den selben Pfad haben nämlich dem zum Tool. Ich bräuchte die Argument mitgeliefert dann könnte ich das richtige Element bzw. Elemente aus der XML entfernen. Anschließend noch mal alle Element nach dem 1ten Refresh neu hinzufügen (E1 ist ja jetzt nicht mehr in der XML) und dann erneut Refresh aufrufen! So würde die JL immer UpToDate sein, habe ich manuell getestet. Ich hatte also die Idee das custom.destination file auszulesen weil dort steht drin welches Element welchen Status hat und auch die Argumente dazu. [SW_HIDE], [SW_SHOWNORMAL]!

Vielleicht hat einer noch eine Idee wie ich an die Entfernten JumpListLink's ran komme!?

Thema: Lesen von CustomDestinations-ms Dateien
Am im Forum: Rund um die Programmierung

Mit der Spezifizierung sollte es schon gehen einen Reader zu implementieren, jedoch bin ich kein Fan von "Erfinde das Rad 2 mal"! Ich kann mir kaum vorstellen das ich der einzige bin der sowas braucht bzw. gebraucht hat....!

Thema: Lesen von CustomDestinations-ms Dateien
Am im Forum: Rund um die Programmierung

Zitat
Es geht um die Jump Lists, richtig?

JA!

Auf den Wiki Eintrag bin ich auch schon gestoßen, dort hab ich auch das Tool gefunden. Aber ich finde dort kein verlinktes PDF! Kannst du bitte einen konkreten Link posten?

Edit: Jump List Analysis ist recht interessant. Dort heißt es:
Zitat
The *.customDestinations-ms files are apparently just a series of LNK format streams appended to each other.

Heißt ich brächte nur einen Reader für MS-SHLLINK bzw. eine C# API. Bis jetzt hab ich aber nichts passendes gefunden!

Thema: Lesen von CustomDestinations-ms Dateien
Am im Forum: Rund um die Programmierung

Hallo zusammen,

kennt einer von euch einen Weg mit Hilfe von C#/Win API eine *.customDestinations-ms Datei in ein lesbares Format zu Übersetzen? Der Jump List Parser übersetzt das in eine Textdatei die man sehr lesen kann hat aber keine offene API!

Thema: XML von google wetter api wird nicht geladen
Am im Forum: Rund um die Programmierung

Kleiner Tip noch am Rande. Aller 10 Sekunden ist keine Gute Idee weil du dann früher doer später folgende Meldung bekommen wirst...

Fehler
We're sorry...

... but your computer or network may be sending automated queries. To protect our users, we can't process your request right now.

See Google Help for more information.

Oder du baust halt einen dynamischen Proxy ein dann solltest du das umgehen können.

Thema: JumpList CustomCategory Listenverwaltung
Am im Forum: Rund um die Programmierung

Hallo zusammen,

ich habe ein Problem mit JumpList und CustomCategory und dem verwalten eigener Listen unterhalb der Categories. Kurz zur Sematik meiner Listen. Jeder Eintrag einer Liste ist einer eindeutigen Kategorie zugeordnet wobei 2 Elemente sich eine Categorie teilen können. Es wird immer das zuletzt letzte JumpListLink Element hinzugefügt. Ich verwalte das selber in einer XML und halte dort höchstens 10 Elemente vor. Das klappt soweit ohne Probleme. D.h. wenn das Tool das erstmal gestartet wird dann ist die XML leer und auch keine Kategorie enthalten. Wenn das erste mal mit dem Tool eine Aktion ausgeführt wird dann wird diese Aktion in und die dazugehörige Kategorie hinzugefügt usw. alles ohne Probleme.

Das Problem ist nun wenn ein User aus der Jumplist ein Element raus löscht dann habe ich in der (ich nutze das WindowsAPICodePack) JumpList.RemovedDestinations ein Element drin. Das jedoch ist immer null! Das heißt ich kann es nicht aus meiner XML raus werfen. Hier mal wie ich mein JumpListLink befülle (JumpListElement ist eine eigene Klasse).


JumpListLink link = new JumpListLink(Assembly.GetExecutingAssembly().Location, jumpListElement.Name);
link.Arguments = jumpListElement.Arguments;
link.Path = Assembly.GetExecutingAssembly().Location;
link.WorkingDirectory = new FileInfo(Assembly.GetExecutingAssembly().Location).Directory.FullName;

Das Problem ist nämlich wenn ich das Element nicht aus der XML entferne und wieder in die Kategorie rein schreibe dann ist die JumpList anschließend komplett leer?

Ich mal in das APICodePack rein geschaut und auch den Grund dafür gefunden! Er versucht das gelöschte JumpListItem in ein IShellLinkW bzw IShellLink zu casten aber das ist es natürlich nicht.

Weiß jemand was ich falsch mache oder wie ich mein Vorhaben bewerkstelligen kann?

Edit: Komisch ist das wenn ich ein Element aus der JumpList entferne was das Tool noch läuft dann ist in der JumpList.RemovedDestinations wirklich der Pfad den ich dan das Element geschrieben habe drin. Wenn das Tool beendet ist und ich entferne es danach und starte das Tool anschließend neu dann bekomme ich wieder null bei dem Element als Pfad!?

Thema: TFS Connection disconnected event
Am im Forum: Netzwerktechnologien

Hi zusammen,

ich benutze die API vom TFS für ein Tool und um ein paar Auswertungen zu machen.


m_Server = new TfsTeamProjectCollection(new Uri(tfsServer));
m_Version = (VersionControlServer)m_Server.GetService(typeof(VersionControlServer));
....

Gibt es irgendeine Möglichkeit ein Event zu bekommen wenn der Server down ist bzw. die Verbindung nicht möglich? Hab in der MSDN gesucht aber kein passendes Event gefunden! Ich vermute mal das es sowas nicht gibt weil sicher nicht immer eine connection besteht sondern nur wenn etwas vom Server angefordert wird, aber vielleicht irre ich mich ja auch!

Danke im voraus!

Thema: SLN FileType Registrierung verhindert Windows Explorer Kontextmenü Eintrag
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hi herbivore,

ich konnte es leider noch nicht gegen testen aber ich denke du hast recht! Danke für den Hinweis!

Thema: Ermitteln des Username anhand eines Rechnernamens innerhalb einer Domain
Am im Forum: Netzwerktechnologien

Hier damit geht das ganz leicht und sehr sehr schnell!

Get a users full name!

Thema: SLN FileType Registrierung verhindert Windows Explorer Kontextmenü Eintrag
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Ich habe es jetzt mit Hilfe von Win7 Recent Jumplist without associating a filetype auf die Reihe bekommen. Die Ursache würde mich trotzdem noch interessieren!

Thema: SLN FileType Registrierung verhindert Windows Explorer Kontextmenü Eintrag
Am im Forum: Basistechnologien und allgemeine .NET-Klassen

Hi zusammen,

ich habe ein seltsames Verhalten bei einem ContextMenu Eintrag für die Dateiendung *.sln. Ich habe einfach in der Registry folgenden Key eingefügt:


HKEY_LOCAL_MACHINE/Software/Classes/VisualStudio.Launcher.sln/Shell/BuildSolution/command
value="Path_to_executable" %1

Das funktioniert auch sehr gut. Das heißt immer dann wenn ich eine *.sln mit der rechten Maustaste anklicke hab ich den BuildSolution Eintrag im ContextMenu. Nun hab ich für dieses Tool ein weiteres Feature eingebaut (JumpList) dafür muss ich die *.sln als FileType in der Regitry registrieren. Das geht dank des Setup sehr einfach. Jump Lists

Wenn ich nun meine Applikation installiere dann sehe ich den KontextMenü eintrag leider nicht mehr!? Anscheinden behaken sich diese beiden Registry Einträge! Ich hab mal in der Registry gesucht und der Key für das Registrieren des FileTypes liegt hier:

HKEY_CURRENT_USER/Software/Classes/.sln/Visual Studio Solution File
value: "Visual Studio Solution File"

HKEY_CURRENT_USER/Software/Classes/Visual Studio Solution File/shell/open/command
value: "path_to_executable" "%1"

Das JumpList Feature funktioniert zwar aber das KontextMenü nicht mehr. Wenn ich nun den Key HKEY_CURRENT_USER/Software/Classes/.sln/Visual Studio Solution File komplett lösche funktioniert das KontextMenü und das JumpList Feature auch noch. Ich denke nur weil das File vorher Registriert war.

Auf einem Rechner wo das Tool noch nie installiert was funzt beides nicht wenn ich es so mit dem Setup ausliefern würde. Dort geht dann das KontextMenü aber das JumpList Feature nicht!?

Hat einer von euch eine Idee woran das liegen kann?

Thema: Ermitteln des Username anhand eines Rechnernamens innerhalb einer Domain
Am im Forum: Netzwerktechnologien

Hallo,

ich kann anhand eines Rechnernamens innerhalb einer Domain den Usernamen ermitteln z.B so! Im Explorer einfach auf ein Ordner klicken, dann Share und einen neuen Benutzer hinzufügen. Dort geht dann ein kleiner Dialog auf in dem ich den Rechnernamen eines Kollegen eintippen kann und auf Namen überprüfen klicken kann! Anschließend wird mir der Name/Email Adresse des Rechners angezeigt.

Diese Funktionalität benötige ich innerhalb eiens .Net Tools. Weiß jemand vo euch wie ich das erreichen kann?

Thema: Windows 7 Feature in eigener Anwendung: Schritt eins: Wie heißt dieses Feature? [==> Jumplist]
Am im Forum: Rund um die Programmierung

Jo besten Dank. Bin auch auf diese Library gestoßen vielleicht ist die auch was wert!

Windows API Code Pack

Thema: Windows 7 Feature in eigener Anwendung: Schritt eins: Wie heißt dieses Feature? [==> Jumplist]
Am im Forum: Rund um die Programmierung

Danke dir!

Thema: Windows 7 Feature in eigener Anwendung: Schritt eins: Wie heißt dieses Feature? [==> Jumplist]
Am im Forum: Rund um die Programmierung

Hallo zusammen,

ich weiß leider nicht wie man dieses Feature, (hab via google schon gesucht aber nichts passendes gefunden)! Und zwar wenn man ein Programm an die Taskleiste heftet und diese geschlossen hat dann kann man auf das Programm klicken, dann mit gedrückter Maustaste noch oben fahren und wenn es das Programm unterstützt z.B. (chrome) dann kann man dort direkt die zuletzt besuchten Seiten sehen und öffnen!

Sowas würde ich auch gern für eins meiner Tools implementieren nur leider fehlt mir das Schlagwort um gezielt suchen zu können. Kann mir einer weiter helfen oder vielleicht sogar ein Tutorial empfehlen?

Danke im voraus!

Thema: ListView ToolTip löst keinen Zeilenumbruch auf
Am im Forum: GUI: Windows-Forms

Hi,

ich habe ein Problem mit einer ListView und der Eigenschaft ShowItemToolTips. Wenn ich diese gesetzt habe und über einen Item hover welches nicht vollständig Sichtbar ist, dann wird ein Tooltip angezeigt. Soweit so klar, enthält der Text aber Zeilenumbrüche dann werden diese im Tooltip nicht aufgelöst.

Ich habe im Text probiert \n, \n\r, \r\n Environment.NewLine. Nichts hat funktioniert, der Tooltip wird immer einzeilig angezeigt!

Hat jemand einen Tipp für mich?