1

私の Windows アプリは、ユーザーが記述したコードの実行時コンパイルを行います。デバッグ モードでは、CompilationClassインスタンスは、アプリが必要とするいくつかのファイルを取得します。しかし、リリース モードでは、同じクラス インスタンスが別の場所からファイルをフェッチするため、エラーが発生します。

// コードのサンプル

    CompilationClass cc = new CompilationClass();
        List<string> TotalAssemblyFiles;

    public Form1()
    {
        TotalAssemblyFiles = cc.GetAssembliesFile();      // Error in this line      
        InitializeComponent();
    }

何をすべきかわからない..そして問題はリリースモードでのみ発生します。まだパスを指定していません。

    // Code for GetAssembliesFiles method

 public List<string> GetAssembliesFile()
        {
            List<string> myAssemblies = new List<string>();

            if (!File.Exists(Environment.CurrentDirectory + "\\assemblies.sft"))
            {
               // do nothing
            }
            else
            {
                BinaryFormatter binary = new BinaryFormatter();
                Stream sreader = new FileStream(Environment.CurrentDirectory + "\\assemblies.sft", FileMode.Open);

                myAssemblies = (List<string>)binary.Deserialize(sreader); // Issue
                sreader.Close();
            }
            return refAssemblies;

        }

デバッグ モードでは、myAssemblies は 221 個のファイルをフェッチし、リリース モードでは 355 個のファイルをフェッチします。

4

0 に答える 0