Ces notes de release contiennent des informations importantes qui peuvent ne pas apparaître dans la documentation principale du produit. Nous vous recommandons de lire cette page en entier. Pour obtenir la version à jour de ces notes, voir http://docwiki.embarcadero.com/RADStudio/fr/Notes_de_release_pour_XE2.
Avant d'installer, de désinstaller ou de mettre à niveau le produit, lisez les fichiers Install.htm et License.rtf. Le fichier Install.htm contient les exigences système et d'espace libre, ainsi que les procédures d'installation et de mise à niveau. License.rtf est votre contrat de licence logicielle et de support.
Lisez la version à jour du fichier Install.htm sur le docwiki, Notes d'installation pour XE2.
Voici les autres façons d'accéder au fichier Install.htm :
C:\Program Files\Embarcadero\RAD Studio\x.x
La Mise à jour 1 du produit est utilisée comme ligne de base pour XE2. Ainsi, la Mise à jour 1 doit être présente avant d'installer les mises à jour suivantes.
Nous vous conseillons d'installer chaque mise à jour du produit dès sa disponibilité. Chaque mise à jour, autre que la Mise à jour 1, a des notes de release personnalisées sur le docwiki. Vous pouvez ainsi (et vous devez) lire les notes de release associées avant d'installer une mise à jour. Les mises à jour XE2 disponibles (autres que Mise à jour 1) sont listées à la fin de ces notes de release et dans la rubrique Nouveautés de Delphi et C++Builder XE2
Pour vérifier la disponibilité d'une mise à jour du produit, allez sur Menu Démarrer | Tous les programmes | Embarcadero RAD Studio XE2 | Vérifier les mises à jour.
Les instructions se trouvent dans la rubrique Notes d'installation pour XE2.
Pour de plus amples informations sur les problèmes d'installation, de déploiement et de licences, voir les fichiers Install.htm, Deploy.htm et License.rtf qui sont installés par défaut dans C:\Program Files\Embarcadero\RAD Studio\x.x (Program Files (x86) pour Windows 64 bits).
Les licences des versions antérieures du produit sont incluses avec votre licence XE2.
Pour de plus amples informations sur les licences, voir Notes d'installation pour XE2 ou le fichier Install.htm dans le répertoire d'installation de votre produit.
Si un projet A (un exécutable ou un dll / dylib / package) dépend d'un autre projet B, vous devez déployer les dépendances du projet B avec le projet A. Par exemple, dans une application OS X, les .dylibs requis peuvent être libcgcrt.dylib, bplrtl160.dylib ou d'autres .dylibs Embarcadero. Pour ajouter manuellement des fichiers à un déploiement, utilisez le gestionnaire de déploiement pour inspecter le déploiement de B, et ajoutez ces dlls / dylibs / packages au déploiement de A, avec la sortie finale de B.
Si votre système a une valeur de plate-forme inconnue (par exemple, sous la forme d'une variable système prédéfinie %Platform%), le message d'erreur suivant est affiché :
Variable PLATFORM non valide "(valeur)". PLATFORM doit prendre l'une des valeurs suivantes : "Win32", "Win64" ou "OSX32".
Si PLATFORM est définie par l'environnement de votre système, elle doit être redéfinie dans l'EDI de RAD Studio ou passée explicitement sur la ligne de commande à MSBuild ; par exemple, /p:Platform=Win32.
Pour déboguer les applications WebSnap and WebBroker en utilisant WebAppDebugger, démarrez en exécutant serverinfo.exe, qui se recense lui-même en mode silencieux. Cette étape est nécessaire pour utiliser le débogueur d'applications Web (WebAppDbg.exe, situé dans le dossier \bin de votre répertoire d'installation).
Windows® Vista®, Windows® 7 et les systèmes d'exploitation à venir affichent correctement la police pour chaque langue. Sur les systèmes d'exploitation XP, la police utilisée par l'EDI (Tahoma, livrée avec les versions anglaises du système d'exploitation) ne supporte pas l'affichage des caractères hors du plan multilingue de base. Les caractères utilisant les paires de substitution ne s'afficheront pas correctement dans certaines parties de l'EDI, notamment l'inspecteur d'objets.
Pour permettre un affichage correct, installez le support de langue supplémentaire dans Windows en utilisant Région et langue dans le panneau de configuration de Windows. Pour de plus amples informations, voir http://blogs.embarcadero.com/nickhodges/2008/07/17/39073.
Si vous êtes un fournisseur de composants VCL et que votre installateur de composants met à jour des chemins dans le registre afin d'inclure les chemins de vos composants, votre installateur doit mettre à jour une clé de registre supplémentaire dans HKEY_LOCAL_MACHINE\Software\Embarcadero\BDS\x.x\Globals.
Ajoutez (ou mettez-la à jour si elle existe déjà) une valeur chaîne appelée ForceEnvOptionsUpdate. Affectez-lui la valeur "1". Quand cette clé de registre a la valeur "1", lors de la prochaine exécution de l'EDI, le fichier EnvOptions.proj est mis à jour sur disque afin d'inclure les chemins ajoutés par votre installateur. Le fichier EnvOptions.proj est le mécanisme par lequel le nouveau moteur de construction MSBuild de l'EDI est capable d'inclure les chemins listés sur la page Bibliothèque - Win32 de la boîte de dialogue Outils > Options de l'EDI.
Si votre installateur met à jour une des clés de registre suivantes, il doit aussi ajouter ou mettre à jour la clé Globals\ForceEnvOptionsUpdate :
Voici les deux façons dont l'EDI décide si un composant est disponible pour Win32/Win64/OSX32. Ici, "disponible" signifie l'apparition sur la palette, et la vérification par l'EDI. L'EDI n'effectue pas de vérification à la compilation autre que l'existence de l'unité du composant. Les deux méthodes s'appuient sur les données incorporées dans le package d'exécution Win32 (ou de conception et d'exécution) qui implémente les composants. L'EDI ne peut pas charger les packages Win64 et OSX32 dans l'EDI. Ainsi, l'EDI doit se reporter au package Win32 pour obtenir des informations.
type [ComponentPlatformsAttribute(pidWin32 or pidWin64)] // not supported on OSX TMyComponent = class(TComponent) private ... end;
L'emploi de cet attribut implique le même contrat que celui décrit à la première puce.
Les noms de portées d'unités ont été introduits dans la release XE2. En général, les concepteurs de composants n'ont pas besoin de fournir un nom de portée d'unité pour leurs composants car la portée est automatiquement incluse dans l'entrée uses ajoutée. Toutefois, si vous créez vos propres composants, vous pouvez ajouter des noms de portées d'unités dans les nouveaux projets et les projets existants en suivant les étapes ci-dessous. Vous pouvez aussi retirer les noms de portées d'unités s'ils ne sont plus nécessaires.
HKEY_CURRENT_USER\Software\Embarcadero\BDS\9.0\Library\libname, où libname est votre plate-forme cible supportée (Win32, Win64 ou OSX32).
CompatibilityUnitScopes
HKEY_CURRENT_USER\Software\Embarcadero\BDS\9.0\Library\Win32\CompatibilityUnitScopes\MyComponentCompany\MyComp;NewComp;OldComp
La rubrique d'aide Ajout de noms de portées d'unités pour vos propres composants décrit une autre solution moins sécurisée qui affecte chaque projet indépendamment de l'état.
Le support par les add-ins tiers du développement multiplate-forme est récapitulé sur : Support multiplate-forme des logiciels tiers.
Si vous créez une application Delphi ou C++ IntraWeb, vous pouvez sélectionner la plate-forme OS X dans le noeud Plates-formes cible du Gestionnaire de projets, mais IntraWeb ne supporte pas le développement pour la plate-forme OS X.
Si vous utilisez FastReport avec RAD Studio XE2, soyez conscient des problèmes suivants :
Dans Windows Vista, vous devez exécuter l'installateur en étant connecté en tant qu'utilisateur avec des privilèges administratifs, car les modifications apportées au répertoire Program Files nécessitent une sécurité élevée.
Le client d'enregistrement échoue de temps en temps sur Windows Vista. Pour résoudre ce problème, sélectionnez Autoriser ce programme quand le Firewall Windows Live OneCare apparaît, puis quittez et redémarrez l'enregistrement. Ne sélectionnez pas Bloquer ce programme, car cela empêchera l'enregistrement par la suite.
Le dossier de sortie bpl par défaut pour les packages x64 est un sous-répertoire du dossier x86. L'installateur du produit crée le dossier x86 BPL, mais il ne crée pas le sous-dossier x64. Cela signifie que, pour compiler des applications packagées Win64, vous devez disposer des privilèges administrateur sous Windows 7.
Sur Vista avec UAC activé, si un nom de fichier exécutable contient "setup", "update" ou "install", vous ne pouvez pas déboguer le programme à moins que l'EDI ne soit démarré sous le compte Administrateur système. Toute tentative d'exécution de fichiers exécutables incluant ces chaînes en dehors de l'EDI déclenche un dialogue de contrôle du compte utilisateur demandant le mot de passe du compte Administrateur système. L'exécution dans l'EDI sans débogage déclenche une erreur indiquant que le programme nécessite une élévation de privilège. L'exécution dans l'EDI avec débogage déclenche une erreur de création de processus. Pour de plus amples informations, voir http://blogs.msdn.com/uac/archive/2006/01/13/512776.aspx.
Si vous utilisez le composant TAnimate dans Vista ou Windows 7, vous devez aussi ajouter le composant TShellResources (dans l'onglet Win32 de la Palette d'outils) à votre projet. L'ajout de TShellResources ajoute les ressources suivantes :
Si vous utilisez toujours le BDE obsolète sur Windows Vista ou Windows 7, vous devez reconfigurer le BDE afin qu'il n'essaie pas d'écrire des fichiers dans le répertoire C:\<racine>. Connectez-vous en tant qu'administrateur et exécutez BDEAdmin.exe, situé dans Program Files\Common Files\Borland Shared\BDE. Sous Native, cliquez sur PARADOX et modifiez NET DIR afin qu'il pointe sur un emplacement autre que le répertoire racine. Une cible suggérée est C:\Utilisateurs\Public\Documents publics\RAD Studio.
L'ordinateur peut redémarrer lorsque vous ajoutez un manifeste qui possède l'extension Windows Vista à un fichier .exe ou un fichier .dll dans Windows XP Service Pack 2 (SP2). Pour de plus amples informations sur ce problème et le hotfix, voir http://support.microsoft.com/kb/921337.
Si vous reconstruisez une application VCL existante incluant des composants de dialogue communs et l'exécutez sur un système Vista, elle utilise les dialogues de tâche et de fichier Vista à la place des dialogues traditionnels de message, d'enregistrement et d'ouverture. Si ce n'est pas votre souhait, définissez la variable globale UseLatestCommonDialogs sur false au début d'un programme pour imposer le comportement original.
Pour exécuter et déboguer la VCL pour les applications Web (IntraWeb), vous devez utiliser Windows 2003 ou Windows XP. Si vous utilisez Windows Vista, vous devez désactiver le UAC (User Access Control) lors du débogage des applications VCL for the Web. Pour de plus amples informations sur IntraWeb, notamment l'aide de la VCL pour les composants Web, voir http://www.atozed.com/intraweb/docs/.
Windows Vista ne supporte pas la visionneuse d'aide WinHelp obsolète (WinHelp.exe). Vous devez migrer votre système d'aide vers HtmlHelp. Si vous voulez utiliser les fichiers .HLP, ajoutez la visionneuse WinHelp32.exe à la liste uses de toute unité incluse dans l'application, et téléchargez la visionneuse WinHelp32 depuis le site web de Microsoft http://www.microsoft.com/downloads/details.aspx?FamilyID=6ebcfad9-d3f5-4365-8070-334cd175d4bb.
Voici une façon de pallier à ce problème : fermez le groupe de projets, rouvrez-le dans le Gestionnaire de projets, cliquez avec le bouton droit sur le projet ayant provoqué l'erreur dans le groupe, et choisissez A partir d'ici | Construire sur le menu contextuel. La compilation devrait réussir pour les projets restants.
Si le projet est composé de fichiers .exe (pas des packages), une autre solution consiste à activer les packages d'exécution et à construire avec ces packages. Pour ce faire :
Depuis XE et en continuant avec XE2, le compilateur Delphi génère des fichiers d'en-tête .hpp par défaut. Il s'agit d'un changement par rapport aux releases pré-XE. Par exemple, si vous essayez d'importer une DLL par valeur ordinale, le compilateur signale l'erreur "E1025 Fonctionnalité de langage non supportée" car la génération .hpp n'est pas compatible avec l'importation d'une DLL par valeur ordinale. Toutefois, vous pouvez importer une DLL par valeur ordinale si vous désactivez la génération .hpp. Allez sur la page Projet > Options > Compilateur Delphi > Sortie - C/C++, et pour l'option Génération des fichiers de sortie C/C++, sélectionnez une valeur qui n'inclut pas les en-têtes, telle que "Générer seulement les DCUs".
Pour les applications C++ OSX qui utilisent des packages, le déploiement du package d'exécution requis peut être incomplet. Certains packages nécessitent un déploiement manuel, notamment les packages requis implicitement par les packages d'exécution du projet listés mais qui n'apparaissent pas dans la liste des packages d'exécution (sur Projet > Options > Packages d'exécution). La solution consiste à utiliser le gestionnaire de déploiement pour ajouter tous les .dylibs requis.
Si vous créez une application console C++ sans framework sélectionné, l'application console ne sera pas capable de lier avec la bibliothèque d'exécution Delphi ou de gérer les exceptions Delphi. Si vous ajoutez une unité à cette application console, l'EDI ajoute les bibliothèques d'exécution Delphi appropriées mais ne bascule pas les bibliothèques d'exécution C++ sur les versions qui initialisent et fonctionnent avec Delphi. La solution consiste à activer "Lier avec la bibliothèque d'exécution Delphi" sur la page Projet > Options > Lieur C++.
La fonction UnicodeString.t_str() renvoie maintenant toujours wchar_t*, quel que soit le mappage _TCHAR en cours.
Cette modification ne vous affecte pas si vous utilisez le mappage _TCHAR = wchar_t. Dans les dernières releases, t_str() renvoyait soit const char* (si _TCHAR était mappé sur char), soit const wchar_t* (si _TCHAR était mappé sur wchar_t). Si le mappage _TCHAR est défini sur char, vous ne pouvez pas affecter le résultat de la fonction t_str() à quelque chose qui ne supporte pas wchar_t (dans ce cas, une erreur de compilation est émise).
Afin d'utiliser les valeurs char, convertissez le code comme suit :
Avant XE : mystr.t_str()
Pour XE et XE2 : AnsiString(mystr).c_str()
Si vous utilisez C++Builder avec WebSnap, assurez-vous que les exécutables sont écrits dans le même répertoire que les fichiers HTML. Sur Projet > Options > Répertoires et Conditions > Répertoire de sortie finale, entrez un point (".") afin que l'exécutable soit écrit dans le répertoire du projet.
Dans des cas rares, l'audit de code pour C++ peut échouer ou fournir des résultats incomplets quand l'en-tête précompilé d'un projet est régénéré. Quand cela se produit, l'une des actions suivantes corrigera le problème :
Si vous créez un package C++ contenant une unité Delphi qui utilise les outils DesignIntf et DesignEditors, vous devez choisir Projet > Options > Compilateur Delphi > Autres options. Dans Utiliser ces packages lors de la compilation, ajoutez DesignIDE dans la zone de liste déroulante.
Les clients DataSnap ou Cloud pour C++/OS X n'effectuent pas de liaison quand ils sont construits avec les packages d'exécution. La solution consiste à ajouter CustomIPTransport à la liste des packages d'exécution (choisissez Projet > Options > Packages > Packages d'exécution).
Les pilotes de base de données suivants ne sont pas compatibles Unicode :
Si vous effectuez la mise à niveau d'une application de base de données de Delphi 2007 vers Delphi XE2, la connexion est susceptible d'échouer. La solution consiste à ajouter DBX<nom base de données> à votre clause uses. Par exemple, si vous utilisez un TSQLConnection et établissez une connexion à une base de données Oracle, vous devez ajouter DBXOracle à votre clause uses.
Les combinaisons suivantes ont été testées :
| 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 |
Si une version antérieure du produit est installée et si vous essayez d'utiliser l'ancienne version, il est possible que les pilotes de cette release soient chargés lors d'une exécution depuis l'EDI. En effet, le répertoire \bin se trouve en tête du chemin système. Pour utiliser les anciens pilotes, une solution consiste à ajouter une redéfinition à votre chemin dans Outils > Options > Variables d'environnement et à placer votre ancien répertoire \bin au début du chemin.
* Le pilote n'est pas totalement certifié pour cette version de la base de données.
Si votre application Delphi est liée aux packages d'exécution, les informations de débogage attendues peuvent ne pas être générées. Cela est vrai pour les applications Mac OS X et les applications Win64 ou Win32 distantes. La solution consiste à utiliser le gestionnaire de déploiement pour ajouter les fichiers .dcp qui correspondent aux packages d'exécution de votre liste de packages d'exécution. Par exemple, si vous utilisez la rtl, vous devez déployer le fichier rtl.dcp.
Utilisez les fichiers .dcp situés dans les répertoires Embarcadero\Rad Studio\9.0\lib, comme suit :
L'erreur Delphi E2213 (Format de l'unité packagée incorrect) peut se produire lors de la construction d'une application Delphi FireMonkey HD OS X dont les options Lier avec les packages d'exécution et Utiliser les .dcus de débogage sont activées. Si vous définissez ces options (Projet > Options) séparément et dans l'ordre donné, et effectuez une construction après l'ajout de chaque option, la construction échoue après la définition de l'option Utiliser les .dcus de débogage. La solution consiste à enregistrer le projet, à tout fermer et à rouvrir le projet. A ce stade, une construction devrait réussir.
Sur Mac OS X, certaines exceptions du système d'exploitation sont mappées sur les exceptions du langage Delphi par la bibliothèque d'exécution. Parmi ces exceptions, les exceptions de niveau mach EXC_BAD_ACCESS, EXEC_ARITHMETIC et EXC_BAD_INSTRUCTION, ou les signaux de niveau Unix équivalents. Cette fonctionnalité n'est pas compatible avec le débogage et est désactivée quand un processus est créé pour le débogage. Le débogueur notifiera l'utilisateur quand l'exception est déclenchée. Néanmoins, les programmes qui s'appuient sur l'interception de telles exceptions et poursuivent leur exécution peuvent avoir un comportement différent lorsqu'ils sont exécutés sous le débogueur.
Si votre application OS X contient des exceptions non gérées, le débogueur affiche une notification d'exception qui vous permet d'arrêter, de continuer ou d'ignorer. Si vous continuez, et si Xcode est installé sur le Mac cible, le Mac affiche un message d'avertissement de sortie inattendue, vous demandant d'envoyer un rapport à Apple. Vous pouvez désactiver cet avertissement en visitant la page CrashReporterPrefs, située sur le Mac dans Développeur/Applications/Utilitaires. Cliquez sur le bouton Serveur pour autoriser l'opération sans surveillance.
La tentative de placer dans le code un point d'arrêt données risque de fausser le déroulement du programme. Par exemple, placer un point d'arrêt données sur un slot VMT risque de faire aller le programme à un emplacement incorrect (le "dernier" octet de l'adresse est écrasé par 0xcc).
Après Exécuter > Détacher sur une session de débogage, l'EDI peut se bloquer quand vous démarrez une autre session de débogage.
System Mechanic 7 Pro désactive la fonctionnalité du débogueur intégré. Le comportement observé est la terminaison immédiate du processus et un message de diagnostic dans la vue Journal d'événements. Si le produit est installé, la fonctionnalité de débogage peut être rétablie en désactivant l'exécution du service "iolo DMV" via le Gestionnaire de services.
Pour effectuer une mise à niveau d'un projet ITE/ETM depuis Delphi 7, vos dfms doivent être au format texte. Pour effectuer cette conversion, utilisez convert.exe (installé par défaut dans C:\Program Files\CodeGear\RAD Studio\8.0\bin).
Lorsque le projet est importé et que vous avez mis à jour votre dll de ressources à l'aide de l'expert DLL de ressources, il est possible que vous constatiez que votre dll de ressources n'a pas été mise à jour. Dans ce cas, le problème est résolu en effectuant simplement une nouvelle fois la mise à jour dans l'expert.
Il n'est pas recommandé d'utiliser vos paramètres régionaux utilisateur pour les paramètres régionaux de l'interface utilisateur. Les paramètres régionaux utilisateur contrôlent le format des nombres, de la date et de l'heure. Les paramètres régionaux de l'interface utilisateur contrôlent les menus, les messages d'erreur et le texte lisible d'une langue spécifique.
La VCL/RTL sélectionne le module localisé que Windows utilise. Si vous voulez utiliser les paramètres régionaux utilisateur pour sélectionner le module de l'interface utilisateur, créez une nouvelle unité, OverrideUIWithUserLocale.pas, et collez le code suivant :
unit OverrideUIWithUserLocale;
interface
implementation
uses Windows;
initialization
SetLocaleOverride(GetUILanguages(GetThreadLocale));
end.Ajoutez cette unité OverrideUIWithUserLocale en tant que première entrée de la section uses :
program Project1;
uses
OverrideUIWithUserLocale,
Forms,
Unit1 in 'Unit1.pas' {Form1};FireMonkey supporte seulement le Concepteur de fiches incorporé. Si l'EDI est défini pour utiliser le concepteur non incorporé (c'est-à-dire, si Outils > Options > Options d'environnement > Concepteur VCL > Concepteur incorporé est décoché), les projets FireMonkey ouvriront alors les unités de fiches FireMonkey comme si elles étaient des unités Delphi brutes. Le Concepteur de fiches ne sera pas accessible. Pour utiliser le Concepteur de fiches, cochez l'option Concepteur incorporé et redémarrez l'EDI.
Les applications Delphi FireMonkey qui ciblent les plates-formes Win64 et OS X peuvent signaler des fichiers manquants. IPIndyImpl.dcp (utilisé par CloudService.dcp) est manquant pour les plates-formes Win64 et OS X, et inetdbxpress.dcp est manquant dans le répertoire win64\release. Vous pouvez télécharger ces fichiers dans un fichier .zip sur http://cc.embarcadero.com/item/28484 .
L'ajout de composants 3D à un TViewport3D n'ayant pas pour parent une fiche HD ou TLayer3D génère une violation d'accès.
L'événement OnChange pour Fmx.ListBox.TListBox crée une violation d'accès si la procédure utilise la propriété TListBox.Selected.
Une application FireMonkey OS X sous le débogueur, avec certaines régions d'Europe, n'affiche pas correctement les caractères d'Extrême-Orient. Par exemple, les caractères japonais/chinois peuvent s'afficher de manière incorrecte dans tous les composants quand la définition de la région du système n'est pas Anglais ou Japon. Toutefois, si l'application est invoquée depuis le Finder, elle peut afficher correctement les caractères d'Extrême-Orient.
Pour éviter ce problème, ajoutez la ligne suivante au début du script shell paserver.command :
export LANG=C
Le script paserver.command est typiquement situé dans le dossier /users/nom-utilisateur/Applications/Embarcadero/PAServer.
Quand vous modifiez une grille à l'intérieur d'une fiche modale (c'est-à-dire en tapant du texte sur une cellule de grille), l'appui sur la touche ECHAP peut fermer de façon inattendue le dialogue modal.
Une application FMX HD OS X qui contient un TXMLDocument ne se compile pas. TXMLDocument s'attend à Xml.Win.msxmldom.dcu (Delphi) ou Xml.Win.msxmldom.hpp (C++), les deux étant Windows seulement.
Une application FMX OS X qui contient un TTcpClient ne se compile pas. TTcpClient s'attend à Web.Win.Sockets.dcu (Delphi) ou Web.Win.Sockets.hpp (C++), les deux étant Windows seulement.
La classe Indy TIdAntiFreeze n'est pas disponible en tant que composant de conception pour les applications FMX. En solution, ajoutez FMX.IdAntiFreeze dans votre clause uses et instanciez-le par programme.
Pour ajouter un style personnalisé à votre application VCL, accédez à la boîte de dialogue Projet > Options > Application > Apparence. La release XE2 ne supporte pas les styles pour les contrôles ruban.
Avec BorderStyle sur bsDialog, bsSingle ou bsToolWindow, la bordure de la fenêtre de droite empiète sur la zone client.
Dans les applications qui utilisent les styles, parfois Form.Close ne fonctionne pas, et une fiche contextuelle peut se fermer si elle perd la focalisation.
La fonction RTL Win.Winapi.Windows.SetThreadAffinityMask ne supporte pas le développement Windows 64 bits. La solution consiste à déclarer votre propre version de SetThreadAffinityMask. Pour de plus amples informations, voir http://msdn.microsoft.com/en-us/library/ms686247 .
Si vous définissez la propriété TImageList ColorDepth sur cd32Bit et si ImageList contient des images transparentes, vous devez activer les thèmes d'exécution afin que les images fusionnent correctement quand elles sont dessinées sur les contrôles. Dans l'EDI, allez sur Projet > Options > Application.
Un projet VCL contenant un dialogue erreur et conciliation VCL ou un composant TSimpleDataSet ne compile pas sans l'ajout de DataSnap.Midas.dcu. Vous trouverez DataSnap.Midas.dcu dans le répertoire d'installation de votre produit, sous \lib\plate-forme, où plate-forme est win32, win64 ou osx32.
Si des caractères internationaux sont utilisés dans les champs chaîne/mémo, TCustomClientDataSet.SaveToFile en XML peut générer des données incorrectes. Par exemple, des espaces peuvent apparaître à la place des caractères accentués.
En raison de modifications effectuées dans le SDK Windows, l'appel de SizeOf(TNotifyIconData) générera des résultats incorrects sur les versions de Windows antérieures à Windows Vista. L'appel de la méthode TNotifyIconData.SizeOf renvoie la taille correcte sur toutes les versions de Windows.
L'expert Composant > Importer un composant examine seulement le registre 32 bits. Lorsque l'exécution s'effectue sur un système 64 bits, vous devez utiliser directement TLIBIMP si vous voulez importer un contrôle ActiveX ou une bibliothèque de types spécifique à un système 64 bits.
L'EDI, étant un processus 32 bits, ne peut pas recenser les serveurs DLL/en processus 64 bits (les processus 32 bits ne peuvent pas charger des DLLs 64 bits). Pour recenser les serveurs en processus 64 bits, vous devez utiliser la version 64 bits de TRegSvr.exe, située dans $(BDS)\bin64\TRegSvr.exe.
Toutes les bibliothèques C++ ActiveX (avec ATL ou DAX) doivent utiliser la RTL et les packages statiques. Choisissez Projet > Options, puis :
Les applications OS/X C++ utilisant le runtime SOAP (tel que le composant THTTPRIO) doivent lier explicitement le package Indy, étant donné que l'EDI intercepte seulement les dépendances de niveau supérieur.
Pour ce faire, ajoutez les lignes suivantes à un fichier .cpp de votre projet :
#if defined(__APPLE__) #ifndef USEPACKAGES #pragma link "IndyCore.a" #pragma link "IndyProtocols.a" #pragma link "IndySystem.a" #else #pragma link "IndyCore.bpi" #pragma link "IndyProtocols.bpi" #pragma link "IndySystem.bpi" #endif #endif
Si vous invoquez l'expert Importateur WSDL en utilisant le chemin Fichier > Nouveau > Autre > Services Web > Importateur WSDL, et que vous entrez une URL non valide, des messages d'erreur comme les suivants peuvent apparaître :
Impossible de charger l'emplacement/fichier WSDL : <URL non valide>. Erreur [Document vide].
Impossible de charger l'emplacement/fichier WSDL : <URL non valide>. Erreur [Les espaces ne sont pas autorisés à cet emplacement]
La solution préférée consiste à démarrer l'importateur WSDL en utilisant le chemin (Composant > Importer WSDL). L'erreur devrait ensuite être interceptée à l'intérieur de l'expert.
Le support du serveur Win32 SOAP génère des services Web de style RPC|Encoded. Si vous voulez un service document/littéral ou un service de tout autre style compatible WS-I, vous devez construire votre serveur SOAP avec Delphi Prism, qui supporte les spécifications SOAP prises en charge par le .NET Framework, notamment les styles compatibles WS-I.
Quand vous ouvrez le menu contextuel (clic droit) sur l'onglet Vue Modèle du Gestionnaire de projets, il est possible que la commande Ouvrir le diagramme ne soit pas activée. Toutefois, vous pouvez ouvrir la vue diagramme en double-cliquant sur la commande Ouvrir le diagramme grisée.