je veux incorporer un fichier (n'importe quel type de type) à mon application exe et être capable d'extraire dans la télécommande pour l'utiliser, je sais comment faites-le par embarqué dans la ressource, mais je ne veux pas placer les fichiers dans le répertoire de l'application, je veux stocker tous les fichiers (comme .rec) dans mon exe, dans C# il est possible de stocker comme fichier texte, puis lire Par FileStream mais en Delphi, les fichiers de ressources sont séparés du fichier exe. est-il une solution pour faire cela? Merci beaucoup!fichier intégré dans l'application delphi exe (pas comme un fichier séparé de l'application)
Répondre
Vous devez créer un fichier .rc et l'ajouter à votre projet. Le contenu du fichier RC est comme:
FIXED48 IMAGE ..\Resources\Fixed48x48.png
MENU16 IMAGE ..\Resources\Menu16x16.png
TICK SOUND ..\Resources\Tick.wav
PING SOUND ..\Resources\Ping.wav
Maintenant, une fois que vous faites construire, vous pouvez charger une de ces fikles utilisant un TResourceStream:
procedure TdmReportGeneral.InsertLogo(Memo: TStringList; View: TfrView);
var
S: TResourceStream;
begin
if (View is TfrPictureView) and (View.Name = 'Logo') then begin
S := TResourceStream.Create(0, 'FIXED48', 'IMAGE');
try
// do something useful... TfrPictureView(View).Picture.MetaFile.LoadFromStream(S);
finally
S.Free();
end;
end;
end;
Vous devriez être en mesure d'obtenir le compilateur Delphi liez votre ressource à votre EXE en l'ajoutant en tant que pragma {$ R myresource.res} dans une unité de votre projet. Vous pouvez ensuite obtenir un handle via un appel à FindResource lorsque vous avez besoin de le lire.
Cette article vous guide tout au long des étapes appropriées.
DelphiDabbler a a great article sur ce même sujet. Ils incluent même 2 exemples de projets à télécharger qui montrent comment intégrer un fichier en tant que ressource et comment le lire.
Vous pouvez télécharger un worked example que montre ce que nous avons décrit ici - il utilise le code ci-dessus. Le fichier zip contient une paire de projets. Le premier est un programme qui incorpore un fichier texte riche fourni dans un fichier de ressources. Le deuxième programme inclut le fichier de ressource et affiche le texte enrichi dans un composant d'édition riche comme ci-dessus.
- 1. Intégrer une application (fichier exe) dans un autre fichier exe (comme mozEmbed)
- 2. Vidage du fichier dans un fichier séparé avec tomcat?
- 3. Comment créer un fichier EXE dans VB.NET
- 4. une description dans un fichier exe qt
- 5. Téléchargement d'un fichier dans Delphi
- 6. Besoin d'aide dans Configuration Appender nom dans un fichier de configuration séparé comme app.config ou web.config
- 7. Exécution d'un fichier exe à partir d'un autre fichier exe
- 8. Hash d'un fichier .exe
- 9. Définition de l'icône EXE dans Delphi 7
- 10. iPhone - méthodes générales sur un fichier séparé
- 11. Comment effectuer l'écriture de fichier séquentiel dans un thread séparé
- 12. Créer un délégué pour iPhone (dans un fichier séparé)
- 13. Erreur dans le fichier séparé Ada
- 14. Charger Silverlight Canvas dans un fichier XAML séparé?
- 15. ID de contrôle asp.net dans un fichier JS séparé
- 16. Implémentation de la fonction dans un fichier séparé
- 17. Comment créer un fichier exe en Java
- 18. fichier dll ou fichier .exe est manquant
- 19. y compris un fichier exe à jar
- 20. Fichier de configuration séparé pour les fournisseurs
- 21. Comment ajouter un fichier exe à l'installation?
- 22. Exécuter un fichier .exe automatiquement après l'installation
- 23. Comment déboguer un fichier DLL dans Delphi
- 24. Comment fusionner un fichier .ico avec le fichier compilé .exe?
- 25. Comment lire un fichier wav dans Delphi?
- 26. prévention de téléchargement de fichier exe dans un site Web
- 27. Comment mapper un fichier de décalage dans un fichier EXE à sa section PE
- 28. Devrais-je mettre une interface publique dans un fichier séparé?
- 29. Déplacement d'une section de app.config vers un fichier séparé
- 30. Signature d'un fichier Windows EXE
Vous avez mal compris quelque chose. En Delphi, comme dans tous les environnements de développement, les ressources sont séparées * lors du développement *. Après avoir compilé et lié votre programme, les ressources sont * dans * le fichier EXE. Vous pouvez faire la même chose en C#, bien que vous n'utilisiez pas un FileStream pour le lire parce que vous ne voudriez pas lire votre fichier EXE entier juste pour obtenir votre fichier incorporé. –
Sachez également que vous pouvez avoir besoin de privilèges d'administration sur la machine cible si vous souhaitez exécuter cet exécutable après l'avoir extrait sous Vista/Win7. – skamradt