昨日(2017/9/29)から突然、給与計算ソフトがまともに開かなくなってしまった。給与計算ソフトはパスワードを設定している。パスワードを設定していない販売管理ソフトはいつも通り開く。
給与計算ソフトを開こうとすると、パスワードの入力画面が表示されたあと、暗号化されたコードが解析できないような表示が出て、「コードを全削除するか?」というメッセージボックスが開く。うっかり、「OK」してしまうと、コードが全て削除される。「キャンセル」すると、コードはそのままで閉じてしまう。
この給与計算ソフトはAccess97で作成したものをAccess2003、Access2007、Access2016とバージョンアップしたもの。現在はWindows10 + Access2016(64bit)で、今年の1月から問題なく使っていた。
パスワードを設定していない販売管理ソフトの方はコードが削除されたりしないので、「パスワード+暗号化」の部分が自動更新されたOffice2016でうまく引き継ぎされなかったのだと思う。
残したままになっているXP環境で問題の給与計算ソフト(accdb)を開いてみると、普通に開く。調べてみると、本来表示されないはずの「データベースツール」のリボンに「データベースのエンコード/デコード」が表示されている。
https://answers.microsoft.com/ja-jp/msoffice/forum/msoffice_access-mso_winother/%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89/f9ecc396-1365-48c0-8d7e-a95b5123e04e?auth=1
おそらく、Accessのバージョンアップの過程で暗号化がうまく引き継ぎされていないためにコードがうまく認識されないていないのだろう。ちゃんと動作はするのに。ちなみに「データベースのエンコード/デコード」をクリックしても「エンコード/デコード」が完了しない。また、パスワードを設定しているにもかかわらず、「パスワードを使用して暗号化」と表示されていて、解除ボタンは表示されない。
困ってしまった。WindowsXP+Access2007では動作はするものの、パスワードは解除できないし、Windows10+Access2016(64bit)ではコードが削除されてしまう。結局、WindowsXP+Access2007で開いて新たに作ったaccdbファイルに全てのオブジェクトをエクスポートした。新たに作ったaccdbにはパスワードを設定していないので、Windows10+Access2016(64bit)で開いてもコードは削除されないのではないかと思う。月曜日に会社に行って確認してみる。(2017/10/2 パスワードが外れて、コードも削除されなかった。)
全くひどい話しだ。バックアップを取っていたから良かったものの、もし、バックアップがなかったら、全てのコードを失ってしまうところだった。
Access97の時はパスワードの設定だけで、暗号化といった動作はしていなかったように思うのだが、どのバージョンからそうなってしまったのか。暗号化するならするで、ちゃんと動作するようにしてもらいたいものだ。だいたい、パスワードを設定するようなファイルは機密性の高い大事なファイルなのだから。
給与計算ソフトを開こうとすると、パスワードの入力画面が表示されたあと、暗号化されたコードが解析できないような表示が出て、「コードを全削除するか?」というメッセージボックスが開く。うっかり、「OK」してしまうと、コードが全て削除される。「キャンセル」すると、コードはそのままで閉じてしまう。
この給与計算ソフトはAccess97で作成したものをAccess2003、Access2007、Access2016とバージョンアップしたもの。現在はWindows10 + Access2016(64bit)で、今年の1月から問題なく使っていた。
パスワードを設定していない販売管理ソフトの方はコードが削除されたりしないので、「パスワード+暗号化」の部分が自動更新されたOffice2016でうまく引き継ぎされなかったのだと思う。
残したままになっているXP環境で問題の給与計算ソフト(accdb)を開いてみると、普通に開く。調べてみると、本来表示されないはずの「データベースツール」のリボンに「データベースのエンコード/デコード」が表示されている。
https://answers.microsoft.com/ja-jp/msoffice/forum/msoffice_access-mso_winother/%E3%83%91%E3%82%B9%E3%83%AF%E3%83%BC%E3%83%89/f9ecc396-1365-48c0-8d7e-a95b5123e04e?auth=1
おそらく、Accessのバージョンアップの過程で暗号化がうまく引き継ぎされていないためにコードがうまく認識されないていないのだろう。ちゃんと動作はするのに。ちなみに「データベースのエンコード/デコード」をクリックしても「エンコード/デコード」が完了しない。また、パスワードを設定しているにもかかわらず、「パスワードを使用して暗号化」と表示されていて、解除ボタンは表示されない。
困ってしまった。WindowsXP+Access2007では動作はするものの、パスワードは解除できないし、Windows10+Access2016(64bit)ではコードが削除されてしまう。結局、WindowsXP+Access2007で開いて新たに作ったaccdbファイルに全てのオブジェクトをエクスポートした。新たに作ったaccdbにはパスワードを設定していないので、Windows10+Access2016(64bit)で開いてもコードは削除されないのではないかと思う。月曜日に会社に行って確認してみる。(2017/10/2 パスワードが外れて、コードも削除されなかった。)
全くひどい話しだ。バックアップを取っていたから良かったものの、もし、バックアップがなかったら、全てのコードを失ってしまうところだった。
Access97の時はパスワードの設定だけで、暗号化といった動作はしていなかったように思うのだが、どのバージョンからそうなってしまったのか。暗号化するならするで、ちゃんと動作するようにしてもらいたいものだ。だいたい、パスワードを設定するようなファイルは機密性の高い大事なファイルなのだから。