|
2009/02/05(Thu) 12:53:14 編集(投稿者)
梅のど飴さんご返事ありがとうございます > > 実際にシリアライズ・デシリアライズしている部分のソースや、表示される > エラー内容も記載して頂けると他の方も回答し易いかと思うのですが、1点 > だけ確認させてください。 > > Album構造体をAとBの両方に定義されていますでしょうか?
現状は AlbumCreatorアプリを作成が終わり AlbumCreatorの登録機能をなくしたAlbumViewアプリの作成しようとし AlbumCreatorをコピーしてアプリ名をAlbumViewにしただけなのですが ファイルを開くときに 「アセンブリ 'AlbumCreator, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null' が見つかりません。」 とのエラーメッセージがでるようになりました
//SAVE AlbumCreatorのみ FileStream fsSave= new FileStream("C:\1.dat",FileMode.Create,FileAccess.Write); BinaryFormatter bfSave = new BinaryFormatter(); bfSave.Serialize(fsSave, (object)AlbumArr); fsSave.Close();
//LOAD 共通 FileStream fsLoad = new FileStream("C:\1.dat", FileMode.Open, FileAccess.Read); BinaryFormatter bfLoad = new BinaryFormatter(); object obj = bfLoad .Deserialize(fsLoad); //ここでAlbumViewのみエラー fsLoad.Close(); AlbumArr = (ArrayList) obj;
> もう少し踏み込むと、AとBで同じ構造体を共有しますので、Album構造体を > DLL化してプログラム本体から切り出して、AとBの双方から参照される様な > 作り方をされては如何でしょうか。 すいません そうすれば いいのは分かっているのですが C#初めて まだ4日目なのでそこまでの知識がありません 今後勉強しDLLの使い方を覚えて行きたいと思います
|