Vous devez Stream dans la ressource à partir du disque, puisque le .NET Framework ne sera probablement pas charger vos ressources jusqu'à ce que vous les accès (je ne suis pas sûr à 100%, mais je suis assez confiant)
Pendant que vous diffusez le contenu, vous devez également les réécrire sur le disque.
Rappelez-vous, cela va créer le nom de fichier comme « YourConsoleBuildName.ResourceName.Extenstion »
Par exemple, si votre objectif de projet est appelé « ConsoleApplication1 », et votre nom de ressource est « My2MBLarge.Dll », votre fichier sera créé comme "ConsoleApplication1.My2MBLarge.Dll" - Bien sûr, vous pouvez le modifier comme vous le voyez.
private static void WriteResources()
{
Assembly assembly = Assembly.GetExecutingAssembly();
String[] resources = assembly.GetManifestResourceNames();
foreach (String name in resources)
{
if (!File.Exists(name))
{
using (Stream input = assembly.GetManifestResourceStream(name))
{
using (FileStream output = new FileStream(Path.Combine(Path.GetTempPath(), name), FileMode.Create))
{
const int size = 4096;
byte[] bytes = new byte[size];
int numBytes;
while ((numBytes = input.Read(bytes, 0, size)) > 0)
output.Write(bytes, 0, numBytes);
}
}
}
}
}
"comme paramètre de construction" ne signifie rien. Le voyez-vous dans l'onglet Ressources ou est-il visible dans la fenêtre Solution? –