Einzelnen Beitrag anzeigen

MathiasSimmack
(Gast)

n/a Beiträge
 

Re: Multi-Projekt-Organizer (kurz MPO)

  Alt 24. Dez 2003, 10:48
Zitat von Alexander:
Zusätzlich ist noch ein Fehlerhandling hinzu gekommen, es wird jetzt abgefragt ob MSXML 4 installiert ist.
Ich habe den Beitrag extra mal rausgesucht: prüfen ob MSXML4 installiert ist. Dort wird gesagt, dass meine Funktion (s. auch Chakotays XML-Tutorial) Probleme hat, wenn der Dateiname eine Umgebungsvariable wie "%SYSTEMROOT%" usw. enthält. Darum hier eine angepasste Version, die darauf Rücksicht nimmt und eigentlich grundsätzlich funktionieren sollte:
Delphi-Quellcode:
function DoesXMLExist: boolean;

  function ExpandEnvStr(const szInput: string): string;
  const
    MAXSIZE = 32768;
  begin
    SetLength(Result,MAXSIZE);
    SetLength(Result,ExpandEnvironmentStrings(pchar(szInput),
      @Result[1],length(Result)));
  end;

var
  reg : TRegistry;
  s : string;
begin
  Result := false;

  reg := TRegistry.Create(KEY_READ);
  if(reg <> nil) then
    with reg do try
      RootKey := HKEY_CLASSES_ROOT;

      if(OpenKey('CLSID\' + GuidToString(CLASS_DOMDocument40) +
        '\InProcServer32',false)) then
      try
        s := ReadString('');
        Result := fileexists(ExpandEnvStr(s));
      finally
        CloseKey;
      end;
    finally
      Free;
    end;
end;
Zitat von Alexander:
Zitat von MrKnogge:
Ich hab Windows XP HomeEdition mit SP1, und ich bekomme ebenfalls die Fehlermeldungen,
hab ich kein MS XML 4.0 ?
Sieht wohl so aus, iich dachte eigentlich das es dabei ist, [...]
Das Gerücht hat Chakotay in die Welt gesetzt. XML 3 wird IMHO bei der Installation des PSDK im System integriert. XML 4 muss man selbst installieren.

Ansonsten habe ich noch eine etwas ausführlichere Fehlerliste:
  1. Ich halte nicht viel von Fenstern, die ihre Größe speichern. Was soll das bringen?
  2. Die leere XML-Datei muss nicht mitgeliefert werden. Existiert sie beim ersten Start des Programms noch nicht, kann man den notwendigen Code auch mit "loadXML" erzeugen.
  3. Was ist mit der Coolbar (= Rebar) los? Die enthaltenen Toolbars lassen sich problemlos nach oben und unten verschieben, was ... hm, na sagen wir: interessante Auswirkungen hat.
  4. Die Symbole in den Toolbars sind übrigens teilweise schlecht zu erkennen.
  5. Wozu dient eigentlich der Knopf mit dem ... *stutz* ... Was ist das? Ist das ein gelber Schraubenschlüssel? Na egal, irgendwie fehlt ein Tooltipp, so dass man nicht recht weiß, was das Ding eigentlich macht.
  6. Ein bisschen nervig ist, dass man den Bearbeitungsmodus separat einschalten muss. Vor allem, weil ich nicht nachvollziehen kann, was am Betrachten eines Screenshots so ... hm, na ja: keine Ahnung ... sein soll, dass man unbedingt die Bearbeitung aktivieren muss.
  7. Im Bearbeitungsmodus öffnen die Speedbuttons mit dem Ordnersymbol einen Dateidialog. Ich persönlich finde zwar den alten Stil hässlich, aber was soll´s. Ist der Bearbeitungsmodus nicht aktiv, solltest du "ShellExecute" nur ausführen, wenn in den Eingabefeldern auch was drin steht. Alles andere ist Quatsch, weil dann nämlich C:\ angezeigt wird.
  8. Die zwei Comboboxen "Programmiersprache" und "Programmsprache" (sorgt übrigens für leichte Verwirrung, weil sich beides ähnlich anhört) zeigen diverse leere Einträge an. Das passiert immer, wenn irgendein anderes Element aktiv war und man zu einer der beiden Comboboxen zurückkehrt. Mittlerweile steht in der ersten Box der Eintrag Delphi an letzter Stelle, davor sind 7 (!) leere Einträge.
    Das liegt wohl daran, dass dein Programm versucht, meine Eingabe als mögliche Programmiersprache zu speichern. Wie wäre es dann stattdessen mit einem ganz gewöhnlichen Options-Dialog, in dem man bspw. die Sprachen eintragen kann?
  9. Kann ich nicht nachvollziehen, aber jetzt steht plötzlich in der "Programmsprache" (ich schätze mal, damit sind bspw. Deutsch, Englisch, usw. gemeint) Delphi drin. Hm.
  10. mirage hat´s ja schon gesagt, die Aufgaben (to do) und die Bugs melden nur "Listenindex überschreitet das Maximum". Wenn man den Fehler ignoriert und speichert, werden die Fehler allerdings eingetragen. Nach dem Beenden und dem Neustart sieht man sie dann auch.
  11. Hat mit dem vorigen Punkt zu tun: Wenn ich nur Screenshots angebe, dann wird dieser nicht in der XML-Datei gespeichert, wenn nicht auch min. Aufgaben (to do) oder Bugs vorhanden sind.
  12. Das Dialogfeld "Beteiligten Programmierer hinzufügen" sollte man nicht maximieren können. Hat MrKnogge auch schon erwähnt.
  13. Der gleiche Dialog: Vielleicht solltest du beim Start den Fokus auf eins der Eingabefelder setzen, damit man gleich tippen kann?
  14. Der gleiche Dialog: die Tabulatorreihenfolge überdenken.
  15. Der gleiche Dialog: Beim Bearbeiten eines Namens steht im Titel weiterhin "hinzufügen".
  16. Allgemein üblich ist auch, dass ein Doppelklick in eine Liste (in dem Fall: in die Liste der Programmierer) den dazu gehörenden Bearbeitungsdialog öffnet. Das spart ein Herumkurven mit der Maus, weil man nicht extra zur Toolbar hoch muss.
  17. Irgendwas passt mit dem Einfügen der Namen in die List-View auch nicht. Ich habe auch hier 3 leere Zeilen.
  18. Zu guter Letzt: der übliche Fehler in der Programmlogik. Wenn bestimmte Funktionen von bestimmten Bedingungen abhängig sind, dann sollten sie nicht verfügbar sein. Gutes Beispiel ist die Sache mit den Ordnern: steht in den Eingabefeldern nichts drin, dann wird C:\ im Explorer angezeigt. Richtig wäre, in einem solchen Fall den Speedbutton zu deaktivieren.
    Das betrifft bspw. auch das Bearbeiten der Namen der Programmierer bzw. der Aufgaben und Bugs. Erst wenn etwas ausgewählt ist, sollte die Bearbeitungsfunktion benutzbar sein.
Das kriegst du doch besser hin, oder?
  Mit Zitat antworten Zitat