Delphi-PRAXiS
Seite 3 von 3     123   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Entwicklung für Vista und XP (https://www.delphipraxis.net/73669-entwicklung-fuer-vista-und-xp.html)

MathiasSimmack 5. Sep 2006 11:11

Re: Entwicklung für Vista und XP
 
Ja, das Problem am Ende des Assistenten ist mir bekannt. Das hatte ich in der Beta 2 auch schon. Die Konvertierung läuft entweder zu schnell ab, oder es hat den Anschein, als würde sie parallel zum eigentlichen Assistenten werkeln. Sprich: während die Routine noch nach Favoriten scannt, zeigt der Assistent schon das Ende an. Ich weiß aber nicht, was die Ursache ist. :?

MagicAndre1981 5. Sep 2006 11:19

Re: Entwicklung für Vista und XP
 
achso, aber laufen tut es schon mal :)

Machst du davon noch eine C#-Lib? Büdde? :firejump: :firejump:

MathiasSimmack 5. Sep 2006 11:58

Re: Entwicklung für Vista und XP
 
Vom Assistenten? :shock: Um Gottes Willen. Da warte ich lieber auf das finale .NET Framework 3.0 oder 3.1, da wird das eh drin sein. Schließlich forciert Microsoft doch die Entwicklung damit.

MagicAndre1981 5. Sep 2006 15:42

Re: Entwicklung für Vista und XP
 
Zitat:

Zitat von MathiasSimmack
Vom Assistenten? :shock: Um Gottes Willen.

schade :cry:

Zitat:

Zitat von MathiasSimmack
Da warte ich lieber auf das finale .NET Framework 3.0 oder 3.1, da wird das eh drin sein. Schließlich forciert Microsoft doch die Entwicklung damit.

da ist das aber nicht nativ drin. ich wünsche mir ja eine Lib, die mir einen normalen Wizzard unter XP anbietet und den AeroWizzard unter Vista :angel2:

btw, ändere deine Demo mal so um, dass nur unter Vista das Flag PSH_AEROWIZARD gesetzt wird und unter allen anderen Versionen nur das PSH_WIZARD-Flag. So läuft die Demo auf allen Windows-Versionen :zwinker:

MathiasSimmack 5. Sep 2006 16:23

Re: Entwicklung für Vista und XP
 
Diese Demo soll aber nur unter Vista laufen. :stupid: Für die anderen Windows-Versionen gibt es ja noch den normalen Assistenten. Die CommandLink-Buttons gibt es eh nur unter Vista.

MathiasSimmack 7. Sep 2006 08:14

Re: Entwicklung für Vista und XP
 
Ich bin ja begeistert. :stupid: In der RC1 ist der Marquee-Progressbar auch als solcher zu erkennen. Bei meiner Beta 2 war alles grün, und ich konnte nur im gelegentlichen Aufblitzen erahnen, dass das eine Art Zustandsanzeige sein soll. :mrgreen:
Und noch ein Bug behoben: in der Beta 2 blieb der normale Progressbar stehen, wenn man den Status auf Error oder Pause stellte. Jetzt bewegt er sich weiter.

Ich schätze, da muss ich wohl mal den TaskDialog-Artikel bearbeiten.

MagicAndre1981 7. Sep 2006 12:12

Re: Entwicklung für Vista und XP
 
mach das ;)

ich freu mich schon drauf :)

MathiasSimmack 13. Sep 2006 16:46

Re: Entwicklung für Vista und XP
 
Andre, wenn du willst, dann kannst du in der Assembly ("TaskDialogSettings.cs") den Kommentar bei
Code:
public enum TaskDialogFlags
{
        ...
//      CanBeMinimized = 0x8000
}
entfernen und die Assembly neu kompilieren. Mit dem RC1 klappt es: Der TaskDialogIndirect lässt sich minimieren, wenn man das Flag nutzt. Bei Gelegenheit werde ich Luckie mal mit einer aktuellen Version der Demo belästigen. Das gilt dann natürlich auch für Delphi. Aber da ich das im Artikel gar nicht erwähnt habe, muss ich auch nichts aktualisieren. :stupid:

MagicAndre1981 13. Sep 2006 20:05

Re: Entwicklung für Vista und XP
 
Cool, das geht ja :love: :love:

MagicAndre1981 5. Dez 2006 13:09

Re: Entwicklung für Vista und XP
 
Zitat:

Zitat von MathiasSimmack
Ja ja, unser Luckie. Aber egal (s. Anhang). Kommentare, Vorschläge bitte ggf hier im Beitrag. Anwaltsdrohungen und Abmahnungen bitte nur per PN. :zwinker:

die Demo liefert unter der RTM Versionfalsche icons. Mathias, du musst die Deklaration der IDI_xxx im SDK nachsehen und umändern.

MathiasSimmack 1. Apr 2007 16:37

Re: Entwicklung für Vista und XP
 
Ich habe mal wieder was Neues: eine Assembly und ein Tool, mit denen man unter Vista ganz normale Programme (Exe) als Module für die Systemsteuerung registrieren kann. Inklusive dieser netten Tasks, über die man direkt an spezielle Funktionen herankommt. Das setzt natürlich voraus, dass man diese Funktionen so programmiert, dass sie zum Beispiel per Parameter aufrufbar sind. Meine Demo-Anwendung ist ein simples TabControl-Programm, dass per "SECONDTAB" und "THIRDTAB" auch die beiden anderen Tabs anzeigen kann, etwa
Code:
ControlPanelDemo SECONDTAB
Die Assembly könnte benutzt werden, um diese Registrierung direkt von der eigenen Anwendung durchführen zu lassen. Oder man nimmt das Registrierungstool. Ich habe es im Beispielsetup verwendet. Wer es testen will, braucht Inno Setup. Aber bitte nicht die Reihenfolge ändern! Es ist wichtig, dass das Tool zuerst die Tasks-Datei erzeugt (wenn gewünscht), denn beim Registrieren der Exe wird geprüft, ob die Tasks-Datei vorhanden ist. Wenn nicht, wird der Eintrag nicht geschrieben, und die separaten Links erscheinen auch nicht.

Das Registrierungstool (CPRegister) nutzt Dateien der Assembly (ControlPanel.API). In der Projektdatei sind nur Verknüpfungen drin. Vorteil: wenn ich etwas aktualisiere, sind Assembly und Registrierungstool gleichzeitig auf dem neusten Stand.

Wer es ohne Setup versuchen will, muss die Demo, das Registrierungstool und die beiden XML-Dateien aus dem Setupordner in ein Verzeichnis kopieren. Zuerst wird dann die Tasks-Datei erzeugt:
Code:
CPRegister /task:ControlPanelDemo.CTasks.xml
danach wird die Demo registriert
Code:
CPRegister /register:ControlPanelDemo.Register.xml
Wenn man die Systemsteuerung jetzt öffnet, sollte das neue Modul sichtbar sein; einmal bei System und Wartung, und einmal bei Netzwerk und Internet. Einer der Links hat das Schildsymbol, aber ohne Auswirkungen. Die UAC-Funktion müsste man selbst programmieren. Zum Entfernen der Anwendung aus der Systemsteuerung dann nur
Code:
CPRegister /unregister:ControlPanelDemo.Register.xml
starten.

Zur Tasks-Datei noch: Soweit ich das sehen konnte, sind absolute Pfadangaben notwendig, damit später beim Klick auf den Link auch die passende Funktion ausgelöst wird. Da man vorher nicht weiß, wohin der Anwender die Demo usw. kopieren wird, ist das natürlich schlecht. Das Registrierungstool ermittelt deswegen seinen eigenen Pfad und erstellt einen absoluten Pfad für die Einträge im <command>-Knoten der XML-Datei. Man kann daher ohne Pfade bzw. mit relativen Angaben arbeiten (je nachdem, wo sich die XML-Datei befindet, und wo die Anwendung liegt). Das Setup bzw. das Tool passt den Pfad dann entsprechend an.

Vorschläge? Bugs? usw.

MathiasSimmack 2. Apr 2007 16:23

Re: Entwicklung für Vista und XP
 
Liste der Anhänge anzeigen (Anzahl: 1)
Voilà. Die CPL-Klasse ist auch fertig. Na ja ... Im Anhang gibt es also die aktuellen Sourcen. Der Compiler ist ja bereits beim .NET Framework 2.0 dabei; also einfach die Batches nutzen.

Das Demo-Setup läuft jetzt auch unter Windows 2000 und XP, registriert da aber nur die CPL-Datei. Das Registrierungstool läuft demzufolge auch unter 2000 und XP, kann dort aber (technisch bedingt) auch bloß CPL-Module registrieren. Unter Vista kommt noch die Exe-Demo dazu. Die beiden neuen Parameter für das Registrierungstool lauten
Code:
CPRegister /cpl:ControlPanelDemo.CplRegister.xml
CPRegister /uncpl:ControlPanelDemo.CplRegister.xml
Ansonsten hat sich nicht allzu viel geändert. Ein paar Ergänzungen, ein paar Fixes, ... das Übliche eben. :stupid:

ChrisKreisel 3. Apr 2007 12:50

Re: Entwicklung für Vista und XP
 
...bin a weng verwirrt...

Ich entwickle gerade mit Delphi 2007 unter Vista eine neue Anwendung. Jetzt soll natürlich alles im wunderschönen Vista-Style sein...ist garkein Problem...aber die Anwendung soll ja auch noch auf XP bzw. 2000 laufen.

(jetzt bitte nicht prügeln...)
Jetzt hab ich mir die 7 Seiten dieses Themas durchgelesen und weiß jetzt eigentlich garnicht so recht weiter. Ging es in diesem Thema nicht am Anfang darum unter XP Anwendungen zu entwickeln, welche Vista-Style haben...oder wie?!
Kann mir jetzt vielleicht mal jemand irgendwie sagen, wie ich jetzt weitermachen soll...ich steh gerade a weng auf dem Schlauch... :gruebel:


Gruß
Christian

MathiasSimmack 3. Apr 2007 18:29

Re: Entwicklung für Vista und XP
 
Wenn du "normale" Programme schreibst, die unter (soweit) allen Windows-Versionen laufen und dabei immer das Aussehen der jeweiligen Version haben, dann ist alles okay.

Ich habe den Thread hier nur ein bisschen zweckentfremdet, weil es am Anfang darum ging, bestimmte Dinge (etwa den TaskDialog) zu nutzen, und da gab es Delphi 2007 noch nicht. Das .NET Framework wird von Microsoft in der Hinsicht leider auch stiefmütterlich behandelt, so dass man sich die Assemblies selbst schreiben muss. Ich krame den Beitrag immer mal wieder raus, wenn ich irgendwelche Dinge unter Vista nutze und ein kleines Feedback für meine Ideen haben möchte. :stupid:

ChrisKreisel 3. Apr 2007 20:02

Re: Entwicklung für Vista und XP
 
was sind normale Programme...das sind doch die, die von der Stange sind...

also ich schreib a Programm nur mit Win32 und nix mit .Net...hat mit Sicherheit Vor- und Nachteile.

Ja, jetzt hab ich halt immernoch das Problem mit dem Vista-Style und dem XP-Style...naja, werd das Beste daraus machen und mich nicht weiter damit verkopfen...

gibts irgendwo noch ein brauchbares Tutorial bzgl. C# und Delphi? Wär für mich auch noch interessant, da ich noch ein paar Schnittstellen schreiben muss und vielleicht kann ich ja dabei einen "Ausflug" in C# machen...


Gruß
Christian


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:54 Uhr.
Seite 3 von 3     123   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz