Release-Hinweise für Delphi XE2 und C++Builder XE2

By: Masahiro Arai

Abstract: Release-Hinweise für Delphi XE2 und C++Builder XE2

    Release-Hinweise für XE2

Diese Release-Hinweise enthalten wichtige Informationen, die möglicherweise nicht in der Hauptdokumentation zu dem Produkt vorhanden sind. Embarcadero empfiehlt Ihnen, diese Seite vollständig durchzulesen. Die aktuellste Version dieser Hinweise finden Sie unter http://docwiki.embarcadero.com/RADStudio/de/Release-Hinweise_für_XE2.

Weitere Informationen zur Installation, Bereitstellung und Lizenzierung finden Sie in den Dateien Install.htm, Deploy.htm und License.rtf, die standardmäßig im Verzeichnis C:\Programme\Embarcadero\RAD Studio\x.x installiert werden.

    Installation, Deinstallation und Upgrade des Produkts

Lesen Sie vor der Installation, Deinstallation oder dem Upgrade des Produkts die Dateien Install.htm und License.rtf. Die Datei Install.htm enthält die System- und Speicherplatzanforderungen sowie Installations- und Upgrade-Anweisungen.

Die Datei Install.htm befindet sich an folgenden Orten:

  • In der aktuellsten DocWiki-Version unter Installationshinweise für XE2
  • In der Datei Installer.zip
  • In der Hilfe des Startprogramms (klicken Sie auf die Schaltfläche Hilfe)
  • In dem Verzeichnis Ihrer Produktinstallation:
    C:\Programme\Embarcadero\RAD Studio\x.x

    Allgemeine Hinweise

    Lizenzen für frühere Versionen

Ihre XE2-Lizenz umfasst Lizenzen für frühere Versionen des Produkts.

  • Delphi XE2 enthält Lizenzen für Delphi XE, 2010, 2009, 2007 und 7.
  • C++Builder XE2 enthält Lizenzen für C++Builder XE, 2010, 2009, 2007 und 6.
  • RAD Studio XE2 enthält die Lizenzen der früheren, oben aufgeführten Versionen von Delphi und C++Builder.

Weitere Informationen über Lizenzen finden Sie unter Installationshinweise für XE2 oder in der Datei Install.htm im Produktverzeichnis.

    Debuggen von WebSnap und WebBroker mit WebAppDebugger

Starten Sie zum Debuggen von WebSnap- und WebBroker-Anwendungen mit dem WebAppDebugger die Datei serverinfo.exe, die sich im Hintergrund selbst registriert. Dieser Schritt ist für den Debugger für Webanwendungen (WebAppDbg.exe im Verzeichnis \bin Ihrer Installation) erforderlich.

    IDE-Unterstützung für Unicode-Zeichen, die nicht im Basic Multilingual Plane enthalten sind

Windows Vista, Windows 7 und zukünftige Betriebssysteme zeigen die Schriftart für jede Sprache korrekt an. Unter XP unterstützt die Schriftart, die die IDE verwendet (Tahoma, die mit den englischen Versionen des Betriebssystems ausgeliefert wird), jedoch nur die Anzeige von Zeichen, die im Basic Multilingual Plane enthalten sind. Zeichen, die Surrogatpaare verwenden, werden in einigen Bereichen der IDE, z.B. im Objektinspektor, nicht korrekt angezeigt.

Für eine korrekte Anzeige muss eine zusätzliche Sprachunterstützung in Windows installiert werden. Verwenden Sie dazu Regions- und Sprachoptionen in der Windows-Systemsteuerung. Weitere Informationen finden Sie unter http://blogs.embarcadero.com/nickhodges/2008/07/17/39073

.

    Registrierungsschlüssel für die Komponenteninstallation

Wenn Sie VCL-Komponenten vertreiben und Ihr Komponenteninstallationsprogramm Pfade in der Registrierung mit den Pfaden zu Ihren Komponenten aktualisiert, muss Ihr Installationsprogramm einen zusätzlichen Schlüssel in HKEY_LOCAL_MACHINE\Software\Embarcadero\BDS\x.x\Globals aktualisieren.

Fügen Sie den Stringwert ForceEnvOptionsUpdate hinzu (oder aktualisieren Sie ihn, falls er bereits vorhanden ist). Weisen Sie ihm den Wert "1" zu. Wenn dieser Registrierungsschlüssel den Wert "1" hat, wird bei der nächsten Ausführung der IDE die Datei EnvOptions.proj aktualisiert, damit sie die von Ihrem Installationsprogramm hinzugefügten Pfadangaben enthält. Die Datei EnvOptions.proj stellt den Mechanismus bereit, mit dem die neue MSBuild-Build-Engine in der IDE Pfadangaben einbezieht, die auf der Seite Bibliothek - Win32 des Dialogfeldes Tools > Optionen aufgeführt sind.

Wenn Ihr Installationsprogramm einen der folgenden Registrierungsschlüssel aktualisiert, sollte auch der Schlüssel Globals\ForceEnvOptionsUpdate hinzugefügt oder aktualisiert werden:

  • Software\Embarcadero\BDS\x.x\Library\Browsing Path
  • Software\Embarcadero\BDS\x.x\Library\Debug DCU Path
  • Software\Embarcadero\BDS\x.x\Library\Namespace Search Path
  • Software\Embarcadero\BDS\x.x\Library\Package DCP Output
  • Software\Embarcadero\BDS\x.x\Library\Package DPL Output
  • Software\Embarcadero\BDS\x.x\Library\Search Path

    Windows 7 und Windows VistaTM

    Installieren mit Administratorrechten

In Windows Vista muss das Installationsprogramm von einem mit Administratorrechten angemeldeten Benutzer ausgeführt werden, weil das Ändern des Verzeichnisses Programme eine erhöhte Sicherheitsstufe erfordert.

    Neustarten des Registrierungs-Clients

Der Registrierungs-Client schlägt gelegentlich unter Windows Vista fehl. Wählen Sie zur Umgehung dieses Problems Dieses Programm zulassen, wenn die Windows Live OneCare Firewall erscheint. Beenden Sie die Registrierung anschließend, und führen Sie sie erneut aus. Wählen Sie nicht Dieses Programm blockieren, weil dies eine spätere Registrierung verhindert.

    WinHelp wird nicht unterstützt

Windows Vista unterstützt den veralteten WinHelp-Hilfe-Viewer (WinHelp.exe) nicht. Sie sollten Ihr Hilfesystem nach HtmlHelp migrieren. Wenn Sie .HLP-Dateien verwenden möchten, fügen Sie der uses-Liste aller in die Anwendung einbezogenen Unit-Dateien den Viewer WinHelp32.exe hinzu, und laden den WinHelp32-Viewer von der Microsoft-Website http://www.microsoft.com/downloads/details.aspx?FamilyID=6ebcfad9-d3f5-4365-8070-334cd175d4bb herunter.

    TAnimate erfordert TShellResources

Wenn Sie die Komponente TAnimate in Vista oder in Windows 7 verwenden, müssen Sie Ihrem Projekt auch die Komponente TShellResources (aus der Registerseite Win32 der Tool-Palette) hinzufügen. TShellResources fügt die folgenden Ressourcen hinzu:

  • FindFolder.res
  • FindFile.res
  • FindComputer.res
  • CopyFiles.res
  • CopyFile.res
  • RecycleFile.res
  • EmptyRecycle.res
  • DeleteFile.res

    Neukonfiguration der BDE (veraltet)

Wenn Sie die veraltete BDE noch unter Windows Vista oder Windows 7 verwenden, müssen Sie sie neu konfigurieren, damit sie nicht versucht, Dateien in das C:\<Stamm>-Verzeichnis zu schreiben. Melden Sie sich als Administrator an, und führen Sie die Datei BDEAdmin.exe aus (befindet sich in Programme\Common Files\Borland Shared\BDE). Klicken Sie unter Native auf PARADOX, und ändern Sie NET DIR so, dass es nicht mehr auf das Stammverzeichnis zeigt. Ein mögliches Ziel wäre C:\Benutzer\Öffentlich\Öffentlich Dokumente\RAD Studio.

    Manifest-Problem

Wenn Sie einer .EXE- oder .DLL-Datei in Windows XP Service Pack 2 (SP2) ein Manifest hinzufügen, das die Erweiterung von Windows Vista hat, wird der Computer möglicherweise neu gestartet. Weitere Informationen zu diesem Problem und dessen Behebung finden Sie unter http://support.microsoft.com/kb/921337/de.

    Auswählen von Dialogfeldern aus Versionen vor Windows Vista

Wenn Sie eine vorhandene VCL-Anwendung, die Standarddialogfeldkomponenten enthält, neu compilieren und auf einem Vista-System ausführen, werden die Vista-Datei- und Task-Dialogfelder anstelle der traditionellen Öffnen-, Speichern- und Meldungsdialogfelder verwendet. Wenn dies nicht erwünscht ist, setzen Sie am Anfang des Programms die globale Variable UseLatestCommonDialogsauf false. Damit wird das ursprüngliche Verhalten hergestellt.

    IntraWeb unter Vista

Zum Ausführen und Debuggen von VCL-Webanwendungen (IntraWeb) sollten Sie Windows 2003 oder Windows XP verwenden. Unter Windows Vista müssen Sie beim Debuggen von VCL-Webanwendungen die Benutzerkontensteuerung (UAC) deaktivieren. Weitere Informationen zu IntraWeb, einschließlich Hilfe zu den Komponenten von VCL for the Web finden Sie unter http://www.atozed.com/intraweb/docs/.

    Debuggen erfordert Administratorrechte

Wenn unter Windows Vista die Benutzerkontensteuerung (UAC) aktiviert ist, und der Name einer ausführbaren Datei "setup", "update" oder "install" enthält, können Sie das Programm nur debuggen, wenn die IDE unter dem Systemadministratorkonto gestartet wird. Der Versuch, ausführbare Dateien, die diese Zeichenfolgen enthalten, außerhalb der IDE auszuführen, führt zur Anzeige des Dialogfeldes "Benutzerkontensteuerung", das zur Eingabe des Passwortes für das Systemadministratorkonto auffordert. Wenn Sie diese Dateien in der IDE ohne Debugger ausführen, wird eine Fehlermeldung angezeigt. Die Meldung besagt, dass für das Programm eine höhere Berechtigung erforderlich ist. Das Ausführen dieser Dateien in der IDE mit dem Debugger erzeugt einen Prozesserstellungsfehler. Weitere Informationen finden Sie unter http://blogs.msdn.com/uac/archive/2006/01/13/512776.aspx.

    Delphi

    .hpp-Header-Dateien

Seit der Version XE gibt der Delphi-Compiler standardmäßig .hpp-Header-Dateien aus. Dies ist eine Änderung gegenüber Versionen vor XE. Wenn Sie beispielsweise eine DLL anhand des Ordinalwertes importieren möchten, gibt der Compiler die Fehlermeldung "E1025 Sprachfunktion wird nicht unterstützt" aus, weil das Erzeugen von .hpp-Dateien  nicht mit dem Importieren einer DLL per Ordinalwert kompatibel ist. Sie können aber eine DLL per Ordinalwert importieren, wenn Sie die .hpp-Erzeugung deaktivieren. Wählen Sie dazu auf der Seite Projekt > Optionen > Ausgabe - C/C++ für die Option Erzeugung der C/C++-Ausgabedatei einen Wert aus, der keine Header beinhaltet, wie z.B. "Nur DCUs erzeugen".

    C++Builder

     System.UnicodeString.t_str() ist jetzt veraltet

Unabhängig von der aktuellen Einstellung der Option _TCHAR-Zuordnung gibt die Funktion UnicodeString.t_str() jetzt immer wchar_t* zurück.

Diese Änderung hat keine Auswirkung, wenn Sie _TCHAR-Zuordnung = wchar_t verwenden.  In den letzten  Releases gab t_str() entweder const char* (wenn _TCHAR zu char zugeordnet war) oder const wchar_t* (wenn _TCHAR zu wchar_t zugeordnet war) zurück. Wenn _TCHAR-Zuordnung auf char gesetzt ist, können Sie dem Ergebnis der Funktion t_str() nur etwas zuweisen, das wchar_t unterstützt (ansonsten wird ein Compiler-Fehler ausgegeben).

Konvertieren Sie den Code für die Verwendung von char-Werten folgendermaßen:

Vor XE: mystr.t_str()

Für XE und XE2: AnsiString(mystr).c_str()

    ActiveX-Bibliotheken müssen die statische RTL und Packages verwenden

Alle C++-ActiveX-Bibliotheken (die ATL oder DAX einsetzen) müssen die statische RTL und Packages verwenden. Wählen Sie Projekt > Optionen und dann:

  • Auf der Seite C++-Linker False für Mit dynamischer RTL linken.
  • Auf der Seite Packages deaktivieren Sie die Option Laufzeit-Packages verwenden.

    Festlegen von WebSnap-Verzeichnissen

Wenn Sie C++Builder mit WebSnap verwenden, müssen Sie sicherstellen, dass die ausführbaren Dateien in demselben Verzeichnis wie die HTML-Dateien gespeichert werden. Geben Sie unter Projekt > Optionen > Verzeichnisse und Bedingungen > Endgültige Ausgabe einen Punkt (".") ein, damit die ausführbare Datei im Projektverzeichnis gespeichert wird.

    Beheben von Problemen mit der Programmierhilfe

Gelegentlich schlägt Code Insight für C++ fehl oder liefert beim Neuerzeugen eines vorcompilierter Projekt-Header unvollständige Ergebnisse. Sie können dieses Problem folgendermaßen beheben:

  • Erzeugen Sie das Projekt neu oder
  • Löschen Sie den vorcompilierten Header oder
  • Bereinigen Sie das Projekt, und erzeugen Sie es erneut

    Verwenden der Delphi-Tools DesignIntf und DesignEditors

Zum Erstellen eines C++-Package mit einer Delphi-Unit, die die Tools DesignIntf und DesignEditors verwendet, müssen Sie Projekt > Optionen > Delphi-Compiler > Weitere Optionen wählen. Fügen Sie unter Diese Packages beim Compilieren verwenden den Eintrag DesignIDE im Kombinationsfeld hinzu.

    Datenbanken

    Unicode und Treiber

Die folgenden Datenbanktreiber sind nicht Unicode-fähig:

  • DB2
  • Sybase ASE
  • Informix

    Verbindungsfehler

Wenn Sie eine Datenbankanwendung von Delphi 2007 auf Delphi XE2 aktualisieren, könnte die Verbindung fehlschlagen. Fügen Sie zur Lösung dieses Problems der uses-Klausel DBX<Datenbankname> hinzu.  Wenn Sie beispielsweise mit einer TSQLConnection-Komponente eine Verbindung zu einer Oracle-Datenbank herstellen, müssen Sie Ihrer uses-Klausel DBXOracle hinzufügen.

Die folgenden Kombinationen wurden getestet:

LibMySQL.dll (5.1.XX) DBXMys.dll MySQL 4.0.XX Server
LibMySQL.dll (5.1.XX) DBXMys.dll MySQL 4.0.XX Server
LibMySQL.dll (5.1.XX) DBXMys.dll MySQL 5.0.XX Server
LibMySQL.dll (5.1.XX) DBXMys.dll MySQL 5.1.XX Server

    Treiberkonflikte in bei mehreren installierten Versionen

Wenn Sie versuchen, eine installierte, frühere Version des Produkts zu verwenden, könnte die IDE die Treiber des aktuellen Release laden, weil das Verzeichnis bin am Anfang des Systempfads steht. Eine Möglichkeit zur Verwendung der älteren Treiber ist, die Pfadangabe auf der Seite Tools > Optionen > Umgebungsvariablen zu überschreiben und das alte bin-Verzeichnis an den Anfang des Pfades zu setzen.

    Unterstützte Server

dbExpress

  • InterBase XE, 2009, 2007, 7.5.1, 7.1*, 8.0*, 6.5* (Alle) (Treiber dbxINT.dll, Client GDS32.DLL)
  • Firebird 2.5, 2.1, 1.5 (Ent) (Treiber dbxfb.dll, Client fbclient.dll)
  • Sybase SQL Anywhere 12, 11, 10, 9, 8*, (Ent) (Treiber dbxASA.dll, Client dbodbc*.dll)
  • DB2 UDB 9.5, 9.1, 8.x*, 7.x* (Ent) (Treiber dbxDB2.dll, Client db2cli.dll)
  • Informix 9.x (Ent) (Treiber dbxINF.dll, Client isqlb09a.dll)
  • Microsoft SQL Server 2008, 2005, 2000 (Ent) (Treiber dbxMSS.dll, Client sqlncli10.dll)
  • MySQL 5.1, 5.0.27, 4.1* (Alle) (Treiber dbxMYS.dll, Client libmysql.dll)
  • Oracle 11g, 10g, 9.2.0*, 9.1.0* (Ent) (Treiber dbxora.dll, Client OCI.DLL)
  • Sybase ASE 12.5 (Ent) (Treiber dbxASE.dll, Client libct.dll & libcs.dll)

*Der Treiber ist für diese Datenbankversion nicht vollständig zertifiziert.

    Modellierung

Wenn Sie das Kontextmenü auf der Registerkarte Modellansicht der Projektverwaltung öffnen, ist der Befehl Diagramm öffnen möglicherweise nicht aktiviert. Sie können die Diagrammansicht aber öffnen, indem Sie auf den abgedunkelten Befehl Diagramm öffnen doppelklicken.

    Debugger

    Haltepunkte

Das Einfügen eines Datenhaltepunkts in den Quelltext könnte zu einem Fehlverhalten des Programms führen. Wenn Sie beispielsweise einen Datenhaltepunkt für einen VMT-Slot definieren, erfolgt u.U. ein Sprung zu einer falschen Position (das "letzte" Byte der Adresse wird mit 0xcc überschrieben).

    System Mechanic 7 Pro ist mit dem Debugger inkompatibel

System Mechanic 7 Pro deaktiviert die Funktionalität des integrierten Debuggers. Der Debugger wird dadurch sofort beendet, und in der Ansicht Ereignisprotokoll wird eine Diagnosemeldung angezeigt. Die Debugger-Funktionalität kann wiederhergestellt werden, indem die Ausführung des "iolo DMV Service" über den Dienste-Manager deaktiviert wird.

    Internationalisierung

    Migration von ITE/ETM-Projekten aus Delphi 7

Für ein Upgrade eines ITE/ETM-Projekts aus Delphi 7 müssen Ihre dfm-Dateien im Textformat vorliegen. Verwenden Sie für die Konvertierung die Datei convert.exe (wird standardmäßig im Verzeichnis C:\Programme\Embarcadero\RAD Studio\8.0\bin installiert).

Nach dem Import des Projekts und der Aktualisierung Ihrer Ressourcen-DLL mit dem Ressourcen-DLL-Experten kann es vorkommen, dass die Ressourcen-DLL nicht aktualisiert wurde.  Führen Sie in diesem Fall die Aktualisierung einfach noch einmal mit dem Experten aus.

    Verwenden der Benutzer-Gebietseinstellung als UI-Gebietseinstellung

Es wird nicht empfohlen, Ihre Benutzer-Gebietseinstellung für die UI-Gebietseinstellung zu verwenden. Die Benutzer-Gebietseinstellung steuert das Format von Zahlen, Datums- und Zeitangaben. Die UI-Gebietseinstellung steuert Menüs, Fehlermeldungen und den gesamten lesbaren Text für die jeweilige Sprache.

    VCL/RTL und Gebietseinstellung

Die VCL/RTL wählt dasselbe lokalisierte Modul aus, das auch Windows verwendet. Wenn Sie mit der Benutzer-Gebietseinstellung das UI-Modul auswählen möchten, erstellen Sie eine neue Unit, OverrideUIWithUserLocale.pas, und fügen den folgenden Code ein:

 unit OverrideUIWithUserLocale; 
            interface 
            implementation 
              uses Windows; 
            initialization 
              SetLocaleOverride(GetUILanguages(GetThreadLocale)); 
            end.

Fügen Sie dem uses-Abschnitt diese Unit OverrideUIWithUserLocale als ersten Eintrag hinzu:

 program Project1; 
           uses 
             OverrideUIWithUserLocale,  
             Forms, 
             Unit1 in 'Unit1.pas' {Form1};

    VCL/RTL

    Laufzeit-Themes und TImageList.ColorDepth

Wenn Sie die Eigenschaft TImageList.ColorDepth auf cd32Bit setzen und die ImageList transparente Bilder enthält, müssen Sie die Laufzeit-Themes aktivieren, damit die Bilder korrekt auf den Steuerelementen angezeigt werden.

    Unicode-Problem in ClientDataSet.SaveToFile im XML-Format

Wenn in String- oder Memofeldern internationale Zeichen verwendet werden, könnte TCustomClientDataSet.SaveToFile im XML-Format inkorrekte Daten erzeugen.  Beispielsweise könnten anstelle von Buchstaben mit Akzenten Leerzeichen angezeigt werden.

    SizeOf-Problem bei TNotifyIconData

Wegen Änderungen im Windows SDK liefert der Aufruf von SizeOf(TNotifyIconData) in Windows-Versionen vor Windows Vista inkorrekte Ergebnisse. Der Aufruf der Methode TNotifyIconData.SizeOf gibt in allen Windows-Versionen die korrekte Größe zurück.

    SOAP-Server

Wenn Sie den Experten für den WSDL-Import über Datei > Neu > Weitere > WebServices > WSDL-Import aufrufen und einen ungültigen URL eingeben, könnten Fehlermeldungen, wie die folgenden, ausgegeben werden:

  • WSDL-Datei/-Ort kann nicht geladen werden: <falscher URL>. Fehler [Leeres Dokument].
  • WSDL-Datei/-Ort kann nicht geladen werden: <falscher URL>. Fehler [Whitespace ist an dieser Position nicht zulässig]

Rufen Sie in diesem Fall den Experten für den WSDL-Import über Komponente > WSDL importieren auf. Der Fehler sollte dann im Experten abgefangen werden.

Die Unterstützung für den Win32 SOAP-Server erzeugt die älteren im RPC-Stil codierten Webdienste. Wenn Sie einen Dokument-/Literaldienst oder einen Dienst in einem anderen WS-I-konformen Stil haben möchten, sollten Sie Ihren SOAP-Server mit Delphi Prism erzeugen. Delphi Prism unterstützt die SOAP-Spezifikationen, die vom .NET-Framework, einschließlich WS-I-konformen Stilen, unterstützt werden.

    Hilfe

Die Hilfe-Dateien werden standardmäßig unter C:\Programme\Embarcadero\RAD Studio\X.X\Help\Doc installiert.

Siehe Bekannte Probleme in der Hilfe für Informationen über aktuell ungelöste Probleme.

Der RAD Studio-Hilfeinhalt wird jetzt aus einem DocWiki erzeugt, und alle RAD Studio-Anwender sind eingeladen, sich am DocWiki unter der folgenden Adresse zu beteiligen: http://docwiki.embarcadero.com.

Microsoft Document Explorer 2008 (dexplore.exe) ist für die Anzeige der Online-Dokumentation von Delphi und C++Builder XE2 erforderlich. Falls nicht bereits vorhanden, wird Microsoft Document Explorer 2008 während der Installation des Hilfesystems installiert.

Ein bekannter Fehler ist, dass nicht die endgültige Version der Lizenz für Microsoft Document Explorer XE angezeigt wird.

Die Hilfe zu Microsoft Windows Platform SDK wird nicht mehr standardmäßig mit der Produkthilfe installiert. Sie können bei der Installation der Hilfe auch die MS SDK-Hilfe installieren, indem Sie den Eintrag MS SDK-Hilfe auf der Seite Ausgewählte Features auf Wird auf der lokalen Festplatte installiert setzen. Weitere Informationen finden Sie in der Datei Install.html.

Sie können bestimmte Hilfesysteme (z.B. MSDN Online) angeben, um sie in Such- und Indexfunktionen in der Online-Hilfe zu verwenden. Informationen zum Einrichten des Hilfe-Viewers finden Sie in dem EDN-Artikel "Getting the Best Results with RAD Studio Online Help" unter http://edn.embarcadero.com/article/37562..

IntraWeb-Dokumentation: Informationen zu IntraWeb, einschließlich der Hilfe zu den VCL for the Web-Komponenten finden Sie unter .




Server Response from: ETNASC03