Konvertieren von Bitmap Bild

Nachdem ich also ziehen Sie ein Bild aus der DLL und steckte es in einem Bild-Steuerelement ist es ein BitmapImage. Paket wieder in der dll umgesetzt werden muss, wieder zu einem Bild. Wie kann ich konvertieren es zurück zu Bild und wie kann ich Sie Verpacken Sie es wieder in die dll? Das ist alles in wpf in c# geschrieben.

private void compileDLL_Click(object sender, RoutedEventArgs e)
    {
        string sourcePath = Directory.GetCurrentDirectory() + "\\PCAngelResources.dll";
        //destination path
        string dllname = textBox1.Text + "_PCAngelResources.dll";
        string targetPath = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
        string destFile = System.IO.Path.Combine(targetPath, dllname);
        System.IO.File.Copy(sourcePath, destFile, true);

        //lstImages = new Dictionary<string, Bitmap>();
        //string filename = "PCAngelResources.dll";
        Assembly pcangdll = Assembly.LoadFile(sourcePath);
        System.Globalization.CultureInfo culture = Thread.CurrentThread.CurrentCulture;
        ResourceManager rm = new ResourceManager("PCAngelResources.DynResources", pcangdll);
        rs = rm.GetResourceSet(culture, true, true);
        ResourceWriter writer = new ResourceWriter(destFile);

        foreach (DictionaryEntry resource in rs)
        {
            resources.Add((string)resource.Key);
            if (resource.Key.Equals("Branding") || resource.Key.Equals("Advertising"))
            {
                if (resource.Key.Equals("Branding"))
                {
                    writer.AddResource("Branding", image5.Source);
                    //System.Object obj = rm.GetObject((string)resource.Key);
                    //lstImages.Add((string)resource.Key, (Bitmap)obj);
                }
                else
                    if (resource.Key.Equals("Advertising"))
                    {
                        writer.AddResource("Advertising", image6.Source);
                    }
            }
        }
        writer.Generate();
        System.Windows.MessageBox.Show("Done", "Process Finished", MessageBoxButton.OK, MessageBoxImage.Asterisk, MessageBoxResult.OK);
    }

Wenn ich Schriftsteller.Erzeugen (), um die neue dll bekomme ich folgende Fehlermeldung:
Eine nicht behandelte Ausnahme des Typs 'System.- Laufzeit.Serialisierung.SerializationException " ist in mscorlib.dll

Zusätzliche Informationen: der Typ 'System.Windows.Media.Imaging.BitmapFrameDecode' in Assembly 'PresentationCore, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' ist nicht als serialisierbar markiert.

  • Einige Beispiel-code?
  • Bitte definieren Sie das problem deutlicher.
  • aktualisiert code, keine neuen Ideen, wie zum ersetzen der vorhandenen Bildern mit dem Benutzer? Und jede Idee, wie fix der generate () - Fehler.
InformationsquelleAutor Jake | 2009-07-28
Schreibe einen Kommentar