Hallo, hier eines meiner derzeitigen Projekte: Resizer
Das Tool soll einmal eine Liste von Bildern für WebGalerien oder Onlineshops in die richtige Größe konvertieren.
Zur Zeit mache ich es noch in einem Grafikprogram, Bild für Bild, was ich langsam satt habe 😁 .
Es gibt zwar tausende Tools in der Art, für mich ist es ein Testprojekt um .net3.0 mit WPF und Vista zu probieren.
Das Programm läuft wahrscheinlich nur unter WindowsVista, da ich den OpenFileDialog von Vista eingebunden habe. Per Drag´n Drop lassen sich auch Bilder in die ListView hineinziehen, was evtl. auch unter XP geht.. aber nicht getestet.
EDIT: Das Programm läuft nur auf Vista !!! 🙂
Ich bin mir noch nicht ganz sicher, wie ich die Skalierung machen soll. Bis jetzt geht der Slider für die Breite der jeweiligen Bilder. Danach wird die Breite des Thumbnails angepasst. Höhe habe ich noch nicht gemacht. Ich will auch die Möglichkeit ein Bild in ein Quadrat einzupassen, wird alles noch.
Gespeichert wird bis jetzt nur in einem Ordner auf dem Desktop, dies bitte beachten. Den Ordner könnt Ihr ja wieder löschen 🙂
Zum Testen hab ich auch mal die Speech-Engine von net3.0 eingebunden Wenn man oben auf die Buttons geht, spricht die Windows-Sprachausgabe etwas🙂 Ich habe eine deutsche Sprache dafür installiert, hier dafür ein Link:
http://download.microsoft.com/download/1/2/2/12246417-CD66-4541-B32B-8CD18E92AAE7/RSSolo4German.zip
Um die Sprache zu deaktivieren, auf den kleinen Lautsprecher klicken.
Und hier der Link zum TestProjekt:
Und im Anhang noch 2 Screenshots.
Gruß,
imagodespira
Unter WinXP geht es leider nicht - da sagt er nur, dass er ein Problem festgestellt hat. Mehr nicht.
Wahrscheinlich liegt es an dem OpenFileDialog, mal sehen ob ich da eine Abfrage einbaue indem ich das Betriebssystem auslese und danach den FileDialog baue.
Ich denke das Problem liegt an anderer Stelle. Denn da du einen transparenten Fensterhintergrund verwendest wirst du wohl neue API Funktionen von Windows Vista verwenden, die unter WinXP nicht existieren. Und wenn man das tut, dann resultiert das in einer wunderschönen Fehlermeldung wie sie vorliegt, wenn man dein Programm startet.
Wahrscheinlich liegt es an dem OpenFileDialog, mal sehen ob ich da eine Abfrage einbaue indem ich das Betriebssystem auslese und danach den FileDialog baue.
Wenn man dein Programm auf XP startet kriegt man eine System.DllNotFoundException, weil es dort keine Desktop Window Manager DLL (dwmapi.dll) gibt. Mit deinem FileDialog hat das nichts zu tuen.
[Vista: Desktop Window Manager]
http://blogs.msdn.com/greg_schechter/archive/2006/03/05/544314.aspx
[APIs in the Desktop Window Manager]
http://blogs.msdn.com/greg_schechter/archive/2006/09/14/753605.aspx
Dem SDK liegt eine DwmApi.cs bei. Das ist eine Implementierung in C# als managed wrapper, der DWM API Funktionen.
😉 ja, stimmt ich habe die sache auch nicht abgefangen. Ich weiss aber auch nicht, ob ich das noch machen werde, da ich unter Vista arbeite und das eher ein Testprojekt sein soll. Ich hätte wohl dazuschreiben soll, dass es nur unter Vista geht.
Arbeitet Ihr alle noch unter XP, oder sind schon einige umgestiegen?
Hallo imagodespira,
ich arbeite unter Win2k 🙂
Aber ich denke es spricht trotzdem nicht dagegen, wenn du schreibst, dass deine Anwendung nur unter Vista läuft.
herbivore
Läuft bei mir unter Vista.
Guter Ansatz!
Gruß,
Tom
Bekommt man eigentlich auch irgendwie diesen Look auf XP mit installierten .NET 3.0 Framework hin?
Das dieser Aeroeffekt so nicht geht, kann ich mir gut vorstellen, aber würde man dies weglassen könnte doch die Anwendung auch unter XP laufen, oder täusch ich mich?
@Tom: Für die Sprachausgabe habe ich mir die deutsche Sprache "Steffi" heruntergeladen, welche man nach der Installation in der Systemsteuerung bei "Text in Sprache" aktivieren muss. Den Link habe ich oben eingefügt. Die beste Qualität ist es trotzdem nicht. Es gibt kostenpflichtige Sprachen, die mehrere hundert Megabyte an Daten haben mit einem besseren Wortschatz und besserer Ausgabe.
@Reman: Theoretisch kann man das mit XP auch starten, man müsste die Einbindung der DLL für den Aeroeffekt herausnehmen und statt dem Vista OpenFileDialog den von .Net2.0 oder XP einbinden.
Mit 'Steffi' verbinde ich leider eine sehr schrille quietschige Stimme 😭
Viel Spass noch weiterhin!
Gruß,
Tom
Vorab - sehr Chic!
Wenn Du es als Testprojekt machts. Gehe ich mal davon aus, dass Du es nicht verkaufen willst. Und da stellt sich für mich die Frage, ob Du es nicht der Allgemeinheit zur Verfügung stellen könnest!?!?! (Sourcecode)
Würde mich sehr interessieren!
MfG
HyperteX
"In der Informatik geht es genauso wenig um Computer wie in der Astonomie um Teleskope."
Edsger Dijkstra
Original von imagodespira
Arbeitet Ihr alle noch unter XP, oder sind schon einige umgestiegen?
XP ist weiterhin das Betriebssystem auf meinem Produktionsrechner. Vista läuft nur in einer virtuellen Maschine. Nach SP1 für Vista wage ich den vollständigen Wechsel.
@sarabande: Bei mir ist es umgedreht😉 XP läuft bei mir in der VM und Vista als Produktionsrechner, macht mir einfach mehr spass...
@HyperteX: Ich denke, es wird irgendwann als Freeware verfügbar sein. Der Quellcode ist bei mir immer nicht wirklich aufgeräumt, sehr schwierige Funktionen sind bis jetzt auch nicht eingebaut.
Um Oberflächen mit WPF zu gestalten empfehle ich "Expression Blend", ein geniales Tool und mit etwas Einarbeitung kommt man sehr schnell klar damit. Die Oberfläche wird dort erzeugt und die Events in Visualstudio ausgewertet.
Folgende Seite ist sehr zu empfehlen:
http://movielibrary.lynda.com/html/modPage.asp?ID=359&ref=swf
Hier gibt es Videos zur Anwendung von Blend. Die Oberfläche des Programmes diente mir auch als "Anschauungsmaterial" für mein Testprojekt. Ich habe quasi verucht das Design mit dem Programm dort nachzubauen.
Ok danke! Werd ich mir anschaun!
Aber wie machst Du den Hintergrund transparent?
MfG
HyperteX
"In der Informatik geht es genauso wenig um Computer wie in der Astonomie um Teleskope."
Edsger Dijkstra
Original von HyperteX
...Und da stellt sich für mich die Frage, ob Du es nicht der Allgemeinheit zur Verfügung stellen könnest!?!?! (Sourcecode)
Programme, die mit C# geschrieben wurden, sind quasi Open Source. Reflektor und der BAML Viewer als Add On sagen dir etwas?
Danke!
Das is ja echt erschreckend! Naja
Aber ich hab leider immer noch nicht rausgefunden wie er den transparenten Hintergrund gemacht hat...
"In der Informatik geht es genauso wenig um Computer wie in der Astonomie um Teleskope."
Edsger Dijkstra
Ich würde OpenSource und C# eher nicht vereinheitlichen, auch wenn man sicher irgendwie an den SourceCode herankommen könnte. Aber das ist ein anderes Thema🙂
Wenn ich mal den Code des Programmes aufgeräumt habe, gebe ich den vielleicht auch frei. Aber Ich glaube nicht, dass man da viel lernen kann.
Zum Thema Transparenten Hintergrund:
Hier ist ein Link in deutsch wo das beschrieben ist:
http://blog.orbmu2k.de/coding/csharp/glass-effekte-unter-wpf/
Hier ein Link in englisch aus der MSDN:
http://msdn2.microsoft.com/en-us/library/ms748975.aspx
Hier noch ein Link:http://blogs.msdn.com/adam_nathan/archive/2006/05/04/589686.aspx
...Und hier noch ein Link mit SourceCode zum download:
http://blogs.msdn.com/tims/archive/2006/04/18/578637.aspx
Diese Sachen einfach durchstöbern und selbst testen. Alles habe ich auch noch nicht kapiert.. Ich würde gerne den Rahmen des Fensters seitlich und unten verkleinern. Leider klappt das nicht... für Tipps bin ich immer offen 🙂
Naja es ist echt erstaunlich was man mit so einem Reflektor alles rausfinden kann.
Zum Beispiel die Methode testRegNummer!!! Und das ist echt Kinderleicht! Da muss man sich echt überlegen ob c# das richtige für teure Entwicklungen ist...
Gruß
HyperteX
"In der Informatik geht es genauso wenig um Computer wie in der Astonomie um Teleskope."
Edsger Dijkstra
Original von HyperteX
Naja es ist echt erstaunlich was man mit so einem Reflektor alles rausfinden kann.
Zum Beispiel die Methode testRegNummer!!! Und das ist echt Kinderleicht! Da muss man sich echt überlegen ob c# das richtige für teure Entwicklungen ist...
Als ich mit dem Reflektor das erste mal gearbeitet habe, war ich auch am staunen.
Naja dann noch ein paar apetizer:
Es gibt drei gute Decompiler( Dis# Decompiler, Spices.Net und Decompiler.Net), die im Gegensatz zum Reflektor, den vollständigen Quelltext in einem Rutsch übersetzen. Nachteil: Schweine teuer! Aber die Trials liefern auch schon sehr gute Ergebnisse. Jede zweite Methode, Event etc. wird übersetzt. Es gibt auch ein Add In, für den Reflektor, der diese Aufgabe übernimmt, aber meine Erfahrungen sind eher negativ damit.
Die Softwarehersteller, haben darauf reagiert und bieten sogenannte Obfuskatoren an, die die Arbeit der Decompiler zunichte machen. Dafür gibt es auch eine Lösung, aber das führt zu weit.
Entscheidend ist, dass es niemanden interessiert, wie du das Ding gebaut hast, denn die Zeit, die dafür drauf geht, steht in keinem Verhältnis zum Aufwand. In der Zeit hast du es selber programmiert. Einen Quellcode haben und einen Quellcode verstehen, macht den Unterschied aus. Außerdem finde ich es nicht befriedigend, mich, mit den Lorbeeren anderer Programmierer zu schmücken.
Hallo zusammen,
bitte keine Diskussion zu Reflection im Allgemeinen. Bitte nur diskutieren, was auch direkt mit dem vorgestellten Programm zusammenhängt. Danke!
herbivore
Ok, der Thread ist zwat schon etwas älter, aber ich würde das Programm gerne mal ausprobieren. Leider hab ich kein Vista, weshalb das Programm nicht funktioniert. Könntest du den Vista-Dialog nicht raus nehmen?
Hallo, habe deine Antwort erst jetzt gelesen, war lange nicht hier 🙂
Ich versuche es am Wochenende mal hinzubekommen den Vista-Dialog herauszunehmen. Viel habe ich leider nicht mehr geschafft, das Programm ist noch nicht wirklich fertig, wenn mehr Zeit ist geht es weiter.