Je cherchais à lire une image embedded dans une dll et à l'afficher dans un bouton.
Edit: c'est bon j'ai trouvé, pour ceux que ça intéresse, voici le code qui le fait
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54 private void loadSplash() { Assembly assembly; DirectoryInfo dir = new DirectoryInfo("Modules"); if (dir.Exists) { foreach (FileInfo fi in dir.GetFiles("*.dll")) { try { assembly = Assembly.LoadFrom("Modules/" + fi.Name); foreach (string source in assembly.GetManifestResourceNames()) { if (source.Contains("splash")) { Button b = new Button(); Image myImage = new Image(); myImage.Width = 128; BitmapImage myBitmapImage = new BitmapImage(); myBitmapImage.BeginInit(); myBitmapImage.StreamSource = assembly.GetManifestResourceStream(source); myBitmapImage.DecodePixelWidth = 128; myBitmapImage.EndInit(); myImage.Source = myBitmapImage; b.Content = myImage; b.Width = b.Height = 128; this.Content = b; } } } catch (ReflectionTypeLoadException ex) { foreach (Exception e in ex.LoaderExceptions) { Console.WriteLine(e); } } catch (System.BadImageFormatException e) { } catch (System.IO.FileLoadException e) { } } } }
Partager