Ich möchte einige Dateien (Textdateien, vielleicht Grafiken) in einem C++/CLI-Projekt einbetten - vorzugsweise so wie ich es in C# -Projekt tun kann. Dies könnte jedoch unmöglich sein, wie ich in diesem Beitrag gefunden habe: http://bytes.com/topic/net/answers/571530-loading-markup-xamlreader-load-resource-file#post2240705. Das wurde vor drei Jahren geschrieben, vielleicht gibt es jetzt einen Weg, dies zu tun (in VS2k8)?Einbetten von Ressourcen in ein C++/CLI-Projekt
5
A
Antwort
11
Unter C++/Cli-Projekt gehen Sie zu "Eigenschaften ...", dann schauen Sie unter "Linker" und dann "Eingabe", Sie sehen die Liste der eingebetteten Dateien unter "Embed Managed Resource File".
1
Dies ist eine Verschönerung von Tarydon Kommentar, das zeigt, wie die eingebettete Ressource in eine Datei speichern:
using namespace System::IO;
...
String^ tmpFilename = System::IO::Path::GetTempFileName();
try
{
Stream^ readStream = Assembly::GetExecutingAssembly()->GetManifestResourceStream("embedded_file_name.xyz");
if(readStream != nullptr)
{
FileStream^ writeStream = gcnew FileStream(tmpFilename, FileMode::Create);
readStream->CopyTo(writeStream);
readStream->Close();
writeStream->Close(); // Required to flush the buffer & have non-zero filesize
}
}
catch (...)
{
// Do something?
}
1
Go auf Dateieigenschaften, Allgemeine, Medienart, wählen Zusammengestellt Verwaltete Ressourcen
Arbeiten in VS2013
Um Ressource in Programm zuzugreifen:
Stream^ stream = Assembly::GetExecutingAssembly()->GetManifestResourceStream("file.txt");
Verwandte Themen
- 1. Wie Ressourcen in Rust ausführbar einbetten?
- 2. Programmgesteuertes Einbetten von Ressourcen in eine .NET-Assembly
- 3. Einbetten von Razor-Ansichten in die Klassenbibliothek als Ressourcen
- 4. Einbetten von Frameworks in ein Framework iOS
- 5. Ein data.frame in ein R-Skript einbetten
- 6. Ein Cmake-Projekt in ein anderes einbetten?
- 7. Ein Abschriften-Dokument in ein anderes einbetten
- 8. Erstellen von Singular-Ressourcen in Jsonapi-Ressourcen
- 9. Konvertieren von Maven-Ressourcen in Graplore-Ressourcen
- 10. Einbetten von PHP in PHP
- 11. Einbetten von XML in HTML
- 12. Einbetten von WebView in UIView
- 13. einbetten viele Grafiken ein Array
- 14. Einbetten von ListView in Gallery
- 15. Ein UITableView in eine andere Ansicht einbetten
- 16. Einbetten einer Programmiersprache in ein Programm
- 17. Schrift in ein Mac-Bündel einbetten
- 18. Einbetten von VLCJ in JPanel
- 19. Ein Bild in eine AJAX-Antwort einbetten
- 20. Einbetten von UIViewcontrollern in UICollectionviewCells
- 21. Einbetten von Text/HTML in ein Objekt (anstelle eines iFrame)
- 22. Eine Instanz von InfoPath in ein Visual Studio-Projekt einbetten?
- 23. Einbetten von dynamischem Text in ein Video im Flex
- 24. Einbetten von Bugzilla-Berichten
- 25. HTML-Hilfe in ein Formularfenster einbetten
- 26. Glänzende App in ein Jupiter-Notizbuch einbetten
- 27. Shiny: Wie ein SidebarPanel in TabPanel einbetten?
- 28. Eine benutzerdefinierte Ansicht in ein WebView einbetten
- 29. Daten in ein C++ - Programm einbetten
- 30. Itext Schrift in ein PDF einbetten
Wenn Sie eine Datei hier test.dat genannt hinzufügen, dann können Sie es wie folgt zugreifen: Stream-^ stm = Assembly :: GetExecutingAssembly() -> GetManifestResourceStream ("test.dat"); – Tarydon
Überprüfen Sie auch auf Nullptr nur für den Fall. –