Ich schreibe wxWidgets Anwendung, wo ich die .ICO-Datei als Header importieren. Ich versuche, einen wxMemoryFSHandler zu verwenden, um dieses Symbol (und auch andere) als Dateien zugänglich zu machen. Ich verwende den folgenden Code, dies zu tun:Gibt es eine Möglichkeit, ein Symbol aus einem Speicherdateihandler zu laden?
wxFileSystem::AddHandler(new wxMemoryFSHandler);
wxMemoryFSHandler::AddFileWithMimeType(
"app_inactive.ico",
CsiWebAdmin_ico,
sizeof(CsiWebAdmin_ico),
"image/vnd.microsoft.icon");
Leider, wenn ich versuche, ein Symbol aus dieser „Datei“ zu laden, wie unten dargestellt, es funktioniert nicht. Als ich die MSW-Quelle (wx 2.8.10) durchging, kann ich sehen, dass der Loader nie versucht hat, den virtuellen Dateinamen aufzulösen.
wxIcon icon("memory:app_inactive.ico");
Ich habe auch versucht, die folgenden:
wxIcon icon(wxIconLocation("memory:app_inactive.ico"));
und haben die gleichen Ergebnisse auftreten.
Ich weiß, dass ich Ressourcen verwenden kann, um diese Dateien zu laden, aber ich würde immer noch das gleiche Dilemma gegenüberstehen, wenn die Zeit kam, meine Anwendung auf GTK zu portieren. Gibt es etwas Offensichtliches, dass ich vermisse?
Dies ist nicht wirklich die Frage. Meine eigentliche Frage war, warum ein Icon nicht aus einem virtuellen Dateisystem geladen werden kann. –