Autor Beitrag
FinalFantasy
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 127

Windows XP
Delphi 5 Professional, Visual Studio 7 .NET (C#)
BeitragVerfasst: Do 12.01.06 09:56 
Hi,

wie kann ich in C# Text auf den Desktop schreiben? Ich möchte mir gewisse Systeminformationen auf den Desktop (also den Hintergrund) schreiben lassen. So ähnlich wie bginfo von Sysinternals, nur dass die Texte in bestimmten Zeitabständen aktualisiert werden sollen.
Also wie komme ich an den Desktop?


Moderiert von user profile iconChristian S.: Topic aus Allgemeine .NET-Fragen verschoben am Do 12.01.2006 um 09:37
Master_BB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 90



BeitragVerfasst: Sa 21.01.06 15:55 
du könntest das background image dir holen (mußte nen bissle kukn), und dann darauf die informationen per System.Imaging.Paint oder so einfach raufschreiben, natürlich machst du vorher vom orginal nen backup. und beim aktualisieren nimmst du wieder das orginale und schreibst neu drauf und speicherst es neu ab. problem an dieser lösung ist nur das es wohl ziemlich arbeits und speicher aufwendig ist die ganze zeit mit meist recht großen bildern herrum zu fuhrwerken.

andere möglichkeit wäre einfach eine durchsichtige form wo du informationen per label anzeigst und die informationen immer aktualisierst.

ich glaube 2teres ist definitiv die bessere lösung und so würde ichs auch machen

Moderiert von user profile iconChristian S.: Überflüssige Zeilenumbrüche entfernt
FinalFantasy Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 127

Windows XP
Delphi 5 Professional, Visual Studio 7 .NET (C#)
BeitragVerfasst: Mi 25.01.06 16:50 
Ja, der zweite Ansatz ist gut, funktioniert auch so weit.
Hab nur zwei weiterführende Fragen:
1.) Wenn man Win+D drückt (Desktop anzeigen), wird auch meine Form minimiert. Das sollte natürlich nicht sein, weil diese ja nur Infos auf dem Desktop anzeigen soll, und eigentlich will ich mit Win+D unter anderem erreichen, diese Informationen zu sehen...
2.) eigentlich die Weiterführung von 1.). Wenn ich die Form aktiviere, z.B. mit Alt+Tab anwähle, kommt sie in den Vordergrund.... Das sollte auch nicht sein, die Form sollte eigentlich nur an unterster Stelle der Z-Order liegen, egal was man macht, quasi nicht AlwaysOnTop sondern AlwaysInBackground. :-)

Es wäre auch nicht schlecht, wenn die Form bei Alt+Tab gar nicht auftauchen würde. Das Problem mit dem aktivieren löst sich aber auch dadurch nicht.

Mögliche, aber umständliche Lösung für 1):
Per Keyboardhook nach jedem Win+D die Form via Form.Show() oder so ähnlich wieder auf den Desktop bringen.
Master_BB
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 90



BeitragVerfasst: Do 26.01.06 21:01 
hm ja das mit Win+D ist schlecht.

also aus Alt+Tab solltest du raus sein wenn du die MainForm Property
äm ShowInTaskbar = False machst glaub ich. Weil unter Alt+Tab ja nur diese
zur auswahl stehen glaub ich.

ja das mit Win+D, mal überlegen
schwierig, ja also ich würds so machen KeyPreview in der MainForm
an und wenn diese Tastenkombination kommt setzt
du dein ding wieder auf show. wenn das nicht läuft die GANZ
unschöne variante timer und in bestimmten abständen prüfen
FinalFantasy Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 127

Windows XP
Delphi 5 Professional, Visual Studio 7 .NET (C#)
BeitragVerfasst: Fr 27.01.06 08:49 
user profile iconMaster_BB hat folgendes geschrieben:
also aus Alt+Tab solltest du raus sein wenn du die MainForm Property
äm ShowInTaskbar = False machst glaub ich. Weil unter Alt+Tab ja nur diese
zur auswahl stehen glaub ich.


Die Property hab ich sowieso gesetzt. Das Programm ist auch nicht in der Taskbar, aber mit Alt-Tab trotzdem sichtbar

user profile iconMaster_BB hat folgendes geschrieben:

ja das mit Win+D, mal überlegen
schwierig, ja also ich würds so machen KeyPreview in der MainForm
an und wenn diese Tastenkombination kommt setzt
du dein ding wieder auf show. wenn das nicht läuft die GANZ
unschöne variante timer und in bestimmten abständen prüfen

[/quote]
KeyPreview?? Hab ich noch nie gehört... kann denn das funktionieren, wenn das Form gar keinen Focus hat?