Je porte un serveur construit sur Indy TCP Component de Delphi 7 à XE5 pour permettre le support 64 bit. Maintenant, après j'ai fait tout le portage et a couru le serveur, il a travaillé très bien dans l'environnement de test. Il a fonctionné jusqu'à ce que le nombre d'utilisateurs dépassé 400. Ensuite, il commence à créer des erreurs de violation d'accès. Parfois, la rupture sur l'erreur me pointe dans les fichiers source indy et parfois dans la fenêtre CPU. Je ne peux pas repérer la zone de code dans mes sources où l'erreur est générée. Bien que ce type d'erreur de violation d'accès signifie que j'accueille un objet qui n'est pas encore instancié, mais pourquoi l'erreur ne génère pas lorsque moins d'utilisateurs sont en ligne et le code entier est exactement identique au code Delphi 7, les objets sont accédés et libérés De la même façon que je faisais dans Delphi 7. J'ai lu quelque part que le pointage de casting liés choses devraient utiliser NativeInt au lieu d'IntegerCardinal, Maintenant dans le code où je traiter les données entrantes, le code ressemble à ce FPacketBuffe r est un pointeur global déclaré dans chaque TMyContext classe et PacketBufferPtr est une variable entière déclarée dans chaque classe TMyContext Devrais je utiliser NativeInt ici au lieu de Cardinal pourrait ce être la racine de la question si oui pourquoi ne pas créer d'erreur lorsque le nombre d'utilisateurs est inférieur à 400, j'ai testé en utilisant tous Les fonctions dans l'environnement local et aucune portion du code ne génère une erreur. Ce que vous devez comprendre à propos du code 64 bits, c'est que les pointeurs ont une largeur de 64 bits. Contrairement au code 32 bits où les pointeurs ont une largeur de 32 bits. Maintenant, les types entiers natifs Integer et Cardinal sont toujours 32 bits de large. Il est évident que vous ne pouvez pas intégrer toutes les valeurs de 64 bits dans un type de 32 bits. Vous êtes correct que ce code est rompu en 64 bits. Le lancement d'un pointeur 64 bits sur un entier de 32 bits peut entraîner une troncature. Le code peut fonctionner si l'adresse correspond à votre type de 32 bits. Si vous devez exécuter une telle distribution, vous devez jeter vers NativeInt ou NativeUInt. Et en plus de changer les moulages, vous devrez déclarer toutes les variables qui contiennent des pointeurs comme NativeInt ou NativeUInt. Bien sûr, idéalement, vous devriez vous efforcer d'éviter de tels modèles tout à fait. Vous pouvez le faire en n'utilisant pas une variable Integer à pour stocker des pointeurs. Rangez les pointeurs en tant que pointeurs, évitez de lancer des entiers et ne subissez jamais de bogues de troncature de pointeur. Cela dit, le nom de PacketBufferPtr est très trompeur. Ce n'est pas un pointeur comme son nom l'indique. C'est un décalage. Il doit être nommé PacketBufferOffset. Il semble plausible qu'il ne dépassera jamais le niveau haut (Integer) et donc peut être Integer est un choix sonore. Mais il ne serait jamais mal de déclarer qu'il est NativeUInt. Donc, en supposant que vous déclarez les pointeurs comme PByte. Et le décalage comme NativeUInt alors le code serait écrit comme suit: Et maintenant, le code est libre de moulages. Je vous recommande d'activer l'allocation de mémoire de haut en bas en tant qu'aide de débogage. Cela éliminera plus de bogues de cette nature. Merci, j'ai besoin de ce type d'opérations de mémoire car les données reçues doivent être stockées dans une mémoire globale et j'ai besoin de garder une trace des données qui y étaient précédemment stockées et où ajouter plus de données dans cet espace mémoire alloué. Alors je devrais typecast eux comme NativeInt au lieu de Cardinal, et comment permettre l'allocation de mémoire de haut en bas. Ndash Junaid Noor May 20 14 at 8:09 Détail des détails d'allocation de mémoire ici: msdn. microsoften uslibrarybb190527.aspx bien ne soyez pas surpris si votre logiciel AV gags quand vous activez ce paramètre ndash David Heffernan 20 mai 14 à 8: 13here39s a Tech question pour non tech Je n'ai pas eu l'occasion de vouloir faire cela avant, donc I39m espérant que quelqu'un peut m'éclairer. J'ai une application construite en D7, et il est plutôt complexe dans sa fonctionnalité. Est il possible de reconstruire l'application pour fonctionner comme un service Cela nécessiterait la séparation de l'interface utilisateur de l'application Merci, Bill William Meyer a écrit sur 4222010. gt Je n'ai pas eu l'occasion de vouloir faire cela avant, donc I39m espérant gt quelqu'un peut éclaire moi. J'ai une application construite en D7, et il est plutôt gt complexe dans sa fonctionnalité. Est il possible de reconstruire l'application pour exécuter gt en tant que service. Testing Non Tech Je n'ai rien vu depuis trois jours dans ce groupe Q 01242014 15:15:19 1.19.1.372 Q39sBrokenToolBar En cours d'exécution sur TQ Quentin Correll a écrit: gt Je haven39t rien vu depuis trois jours dans ce groupe Comment ça peut être vous A répondu à un post de Nick dans le thread quotTest le bestquot aujourd'hui. Arno Arno, Comment cela peut il être Vous avez répondu à un post de Nick dans le thread quotTest the bestquot aujourd'hui. Curieusement, je pouvais poster. Ltggt Mais je n'étais pas sûr de cela puisque XN n'a rien reçu jusqu'à ce que je l'ai fait. Delphi marché inexistant Il semble que le marché du développement de Delphi a séché. Est ce que quelqu'un trouve des contrats Pas un emploi, un contrat de travail. Gt gt Il semble que le marché du développement de Delphi a séché. Où gt Est ce que quelqu'un trouve des contrats Pas un emploi, un travail à contrat. Oui Regards Bruce McGee Logiciel Glooscap gt gt gt Où les États Unis. Gt gt Oui BTW, vous gardez plus de 2 personnes employées à plein temps gt gt Les États Unis. Non Tech Postings Test rejeté. Hier, mes messages à non tech étaient quotrejected. quot Q 04052012 09:16:20 XanaNews Version 1.19.1.278 Q39sBrokenToolBar Quentin, Testing. Hier, mes postes à non tech ont été quotrejected. quot Il semble que seules mes réponses sont rejetées. Q 04052012 09:19:30 XanaNews Version 1.19.1.278 Q39sBrokenToolBar Quentin, Test. Hier, mes postes à non tech ont été quotrejected. quot Il semble que seules mes réponses sont rejetées. Cette réponse w. Delphi XE5 Bonjour, Je viens d'installer XE5. Il n'y a pas de fichier setuppaserver. zip. Où puis je l'obtenir Joe gt gt Bonjour, gt gt Juste installé XE5. Il n'y a pas de fichier setuppaserver. zip. Gt gt où je l'obtenir gt gt Joe vient de réaliser que son fichier. Pkg. Delphi et Delphi pour Il semble que Delphi pour est plus lent que Delphi Win32 native applicaiton. Je voudrais savoir s'il est vrai que toutes les applications sont plus lentes que Win32 natif applicaiton ou il est Delphi pour seulement. Votre information est grandement appréciée, Inung Le 2011 06 21 18:20:17 0100, Inung Huang a dit: gt Il semble que Delphi pour est plus lent que Delphi Win32 native applicaiton. Gt Je voudrais savoir s'il est vrai que toutes les applications sont plus lentes que gt Win32 natif applicaiton ou il est Delphi pour seulement. Si vous exécutez seulement le code dans l'application une fois, puis, oui, yo. D2009 Datasnap de clients non Delphi D2009 Datasnap respecte t il les normes pour les appels provenant de clients non standard. par exemple. PHP appelant D2009 niveau intermédiaire. Merci CB Christopher Burke a écrit: gt Does D2009 Datasnap suivre toutes les normes pour appeler à partir de clients non standard gt. JSON basé sur ECMAScript (JavaScript). Salutations Rob H . Non tech avec une question de copie de fichier Puis je tout simplement copier ou backuprestore mon GW55 emailcalendaretc. Fichiers sur un autre serveur si mon serveur d'origine s'est écrasé ou I39m changer à un nouveau serveur je suppose que je devrais décharger GW, mais quels dossiers je copierais Merci. Explique. Vous voulez dire le PO entier ou quoi. élucider. Michael J. Bell Novell Soutien Connexion Volunteer Sysop Auteur de Guinevere (openhandhome) VEUILLEZ: Ne m'envoyer un courriel en privé à moins que spécifiquement demandé. I39m un bénévole, pas un employé de Novell Toutes les opinions et conseils fournis sont MINE seul et PAS Novell. Non VCL ZIP classcomponent wanted Salut, I39m recherche d'un composant de classe ZIP qui doesn39t utiliser toute unité VCL. Il doit toutefois prendre en charge les noms de fichiers Unicode, mais je sais qu'il y a du support ZIP dans XE, mais ce n'est pas suffisant. Arno Garrels Sur 962012 10:33 AM, Arno Garrels a écrit: gt I39m à la recherche d'un classcomponent ZIP qui doesn39t utiliser tout VCL gt unitstuff. Il doit toutefois prendre en charge les noms de fichiers Unicode, mais je sais qu'il y a du support ZIP dans XE, mais ce n'est pas suffisant. La plupart des composants zip tiers sont des composants non visuels, de sorte qu'ils ne dépendent pas de la VCL. Abrévia a un certain visu. Servir des datasets au client (non Delphi) Je serais reconnaissant de quelques conseils sur la meilleure façon de concevoir un service Web Delphi pour interagir avec un client autre que Delphi. Le plan consiste à utiliser RAD Studio 2007 pour écrire un serveur SOAP pour transférer des ensembles de données vers et depuis un client distant. L'extrémité client fait partie d'un site Web construit par une autre partie. Les ensembles de données contiendront des enregistrements comportant à la fois des types de données simples et des BLOB. Ma propre préférence serait d'écrire le serveur SOAP comme une application WIN32 natif, mais mon impression est que cela nécessiterait une grande quantité de code de sérialisation personnalisée à écrire. Utilisation de Zip dans Delphi XE5, exemples partout Depuis des années, j'ai utilisé une DLL externe pour compresser des fichiers de données en un seul zipfile. Les auteurs du fichier zip32.pas et de la dll associée sont Theo Bebekis et Marcus Wirth et dans le fichier il est fait mention d'Info Zip. Les sources que j'utilise sont de janvier 2000. Quoi qu'il en soit, puisque je suis maintenant la conversion de l'ancienne application de Delphi7 à XE5, je voudrais utiliser la fonctionnalité intégrée zip, mais j'ai du mal à trouver des exemples sur la façon d'utiliser System. Zip. Quelqu'un peut il ici me pointer vers un exemple de travail qui emballe des fichiers dans un zip SANS également bourrage dans le p original. Delphi XE5 Bonjour, Alors que I39m trop satisfait de Delphi XE5 (à côté de quelques choses bizarres), il ya 1 chose qui est vraiment ennuyeux: le sablier non stop dans l'IDE. Lorsque je clique deux fois sur un mot pour sélectionner: sablier. Quand je déplace le curseur 2 espaces: sablier. Défilement: sablier. Lorsque vous tapez quelques caractères: sablier. Et c'est vraiment tout le temps. L'IDE gèle et I39m perdant beaucoup de temps toujours en attente de continuer. Je me demande pourquoi Embarcadero ne résout pas ce genre de problème. J'ai découvert que l'extinction quotCode par ametersquot, quotTooltip expression evaluationquot, q. Delphi XE2 System. Zip Salut. J'utilise actuellement les composants quotVCLZipquot 3rd pour générer et manipuler des fichiers zip. Je veux adopter mon code pour utiliser TZip de System. Zip, puisque VCLZip n'est plus maintenu et il n'y a aucune version officielle pour Delphi XE2. Je manque des fonctions pour renommer (ou supprimer) des fichiers dans un fichier zip existant. Quelqu'un s'il vous plaît me donner un conseil comment cela peut être fait avec System. Zip Merci pour votre aide Sur 162012 4:27 AM, Ajoschi Roth a écrit: gt Je suis absent des fonctions de renommer (ou de supprimer) des fichiers dans un fichier zip existant. Quelqu'un peut il s'il vous plaît me donner un. La création non copyable télécharger des fichiers zip dans VS2008 Bonjour, Je pense à la vente quothow toquot vidéos de mon site que je permettrai authrenticated utilisateurs de télécharger. Cependant, afin de les empêcher de les redistribuer à d'autres (Dieu m'en empêche), j'ai besoin d'un moyen de restreindre leurs téléchargements pour être utilisable sur seulement say1, 2 ou 3 machines. J'ai entendu parler de DRM, mais pas sûr comment ça marche, I39m Wndering si VS2008 a quelque chose de manchon it39s que je peux utiliser. Toutes les idées, comme toujours, gracieusement apprécié Paul VS n'a pas de telles installations. En outre, la copie de fichiers est toujours possible. DRM peut empêcher les utilisateurs d'ouvrir des fichiers. Pour.
No comments:
Post a Comment