Avatar billede lifo Nybegynder
14. juni 2005 - 20:27 Der er 2 kommentarer og
1 løsning

Debug og Release

er det muligt i runtime at finde ud af om progrmmet er buildet i release eller debug mode ??

altså jeg har en dll som helst skal finde ud af om programmet hvor den bliver brugt er buildet i debug eller release

troede jeg kunne løse det med
#if DEBUG   
men det funker ikke da det er i en ekstern dll
Avatar billede arne_v Ekspert
14. juni 2005 - 21:00 #1
Hvis du kan gennemtvinge at alt bygges med:

#if (DEBUG)
[assembly: AssemblyConfiguration("Debug Version")]
#else
[assembly: AssemblyConfiguration("Release Version")]
#endif

så kan du bruge:

using System;
using System.Reflection;

public class Info
{
    public static string GetVersion()
    {
        Assembly asm = Assembly.GetCallingAssembly();
        object[] attrs = asm.GetCustomAttributes(false);
        for(int i = 0; i < attrs.Length; i++)
        {
            if(attrs[i] is AssemblyConfigurationAttribute)
            {
                AssemblyConfigurationAttribute cfg = (AssemblyConfigurationAttribute)attrs[i];
                return cfg.Configuration;
            }
        }
        return "";
    }
}
Avatar billede lifo Nybegynder
14. juni 2005 - 21:10 #2
tænkte nok det kunne gøres med Reflection

smid et svar
Avatar billede arne_v Ekspert
14. juni 2005 - 21:11 #3
det kan kun gøres hvis alle AssemblyInfo.cs har et sådant lille fragment ...

og svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester