1. Список говнокодов пользователя exe-dealer

    Всего: 1

  2. C# / Говнокод #2237

    +130.8

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    private static bool EvaluteExpression(string expression, out object result)
            {
                string source =
                    string.Format("public static class Evalutor{{public static object GetValue(){{return {0};}}}}",
                        expression);
    
                using (Microsoft.CSharp.CSharpCodeProvider provider = new Microsoft.CSharp.CSharpCodeProvider())
                {
                    System.CodeDom.Compiler.CompilerParameters compilerParams =
                        new System.CodeDom.Compiler.CompilerParameters
                    {
                        GenerateInMemory = true,
                        GenerateExecutable = false
                    };
    
                    System.CodeDom.Compiler.CompilerResults compileResults = provider.CompileAssemblyFromSource(compilerParams, source);
    
                    if (compileResults.NativeCompilerReturnValue == 0)
                    {
                        Type type = compileResults.CompiledAssembly.GetType("Evalutor");
                        MethodInfo method = type.GetMethod("GetValue");
                        result = method.Invoke(null, null);
                        return true;
                    }
    
                }
    
                result = null;
                return false;
            }

    некогда было писать эвалютор))
    работает и так

    exe-dealer, 07 Декабря 2009

    Комментарии (8)