OSDN Git Service

AppliStation-GUI,書き込み禁止ファイルにエクスポートしようとすると異常終了する不具合を修正(エラーケースの処理追加)
authorttp <ttp@users.sourceforge.jp>
Tue, 2 Mar 2010 16:14:48 +0000 (01:14 +0900)
committerttp <ttp@users.sourceforge.jp>
Tue, 2 Mar 2010 16:14:48 +0000 (01:14 +0900)
AppliStation/PackageListViewForm.cs

index 6ee1e35..b72d9f8 100644 (file)
@@ -320,6 +320,7 @@ namespace AppliStation
                        fd.Filter = "ソフトコレクションファイル (*.txt)|*.txt";\r
                        fd.DefaultExt = "txt";\r
                        fd.CheckPathExists = true;\r
+                       fd.OverwritePrompt = true;\r
                        fd.ShowDialog();\r
                        if (fd.FileNames.Length > 0) {\r
                                string filepath = Path.GetFullPath(fd.FileName);\r
@@ -331,6 +332,13 @@ namespace AppliStation
                                \r
                                try {\r
                                        collectionData.saveAs(fd.FileName);\r
+                               } catch (UnauthorizedAccessException) {\r
+                                       if ((File.GetAttributes(fd.FileName) & FileAttributes.ReadOnly) != 0) {\r
+                                               MessageBox.Show("読み取り専用属性が設定されています。\n別のファイルを指定してください。", "エクスポート", MessageBoxButtons.OK, MessageBoxIcon.Error);\r
+                                       } else {\r
+                                               MessageBox.Show("ファイルへの書き込みが許可されていません。\n別のファイルを指定してください。", "エクスポート", MessageBoxButtons.OK, MessageBoxIcon.Error);\r
+                                       }\r
+                                       return;\r
                                } catch (IOException) {\r
                                        MessageBox.Show("ファイルの書き込みに失敗しました", "エクスポート", MessageBoxButtons.OK, MessageBoxIcon.Error);\r
                                        return;\r