質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

89.70%

Windows 10(10.0.18362)でAccess2010が異常終了するのを解決したい。

解決済

回答 2

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,404

Morning0153

score 7

発生している問題

Windows10の特定バージョンで、Access2010のモジュール実行中に突然終了してしまう。エラーは出ず、デバッグにもなりません。

同じ動作をさせても、障害が発生しないこともありますが、同じ動作で障害の現象が頻発(ほぼ発生)します。
ブレイクポイントを設定して、トレースしながら実行すると障害発生しません。
Windows7,8.1,10でこれまで動作していました。(Windows10のパソコンでも発生しないものがあります)
複数台のWindows10のパソコンで障害の現象が発生しています。

Windows7,8.1,10環境で、access2010 Runtime 32bitの環境で、同じプログラムで正常動作するモジュールを作成したい。

環境別症状

(1)Microsoft Windows 10 Pro    10.0.18362 + Access2010 Runtime SP2 32bitのパソコンで実行すると発生。Runtime実行の場合メッセージがでて終了します。
「指定したデータベースを見つけることができないか、またはデータベース名が指定されていません コマンドライン引数でデータベース名を指定し、必要に応じて、パス名も含めて指定してください。」というメッセージがでてOKを押すとACCESSが終了してしまいます。

(2)Microsoft Windows 10 Pro    10.0.18362 + Access2010 14.0.7232.5000 32bit のパソコンで実行すると。エラー表示無に突然終了します。

(3)    Microsoft Windows 10 Pro 10.0.17134 + Access2010 Runtime SP2 32bitのパソコンでは 障害は発生しません。

(4)Windows7,Windows8.1では障害は発生していません。

開発環境

Windows7のパソコン Microaodt Access2010 Version 14.0.7232.5000(32ビット)で開発したプログラムです。

参照設定は
Visual Basic For Applications
Microsoft Access 14.0 Object Library
OLE Automation
Micorosoft Office 14.0 Access database engine
です。

原因がつかめずにいます。
確認すべきこと、回避策、対処などがありましたら、教えてください。
よろしくお願い申し上げます。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • gentaro

    2019/09/10 21:06

    MSのフォーラムや有償サポートに問い合わせましょう。
    https://teratail.com/help/question-tips#questionTips1-1
    「teratailはサポートセンターではなく、思考するエンジニアの為のQ&Aコミュニティです」

    キャンセル

  • Morning0153

    2019/09/12 10:32

    標題、実施したいことを加筆修正しました。Microsoftのフォーラムにて質問すべき内容で、質問自体がこの場に不適切だったかしらと思います。障害内容解消しました、同現象発生時確認等に役立つことがあるかと解決内容を記載し、削除は行わずにおきます。

    キャンセル

回答 2

check解決した方法

0

解決方法
DAOにてデータベースに接続しており、ユーザー関数(モジュール内)でデータベースの接続時、
Set db = CurrentDb()にて接続していました。
このdbはPublicで宣言しており、関数を呼び出す元のFORMでもSet db = CurrentDb()にて接続して、closeしない状態で、モジュールをよびだしていました。
これを、モジュール内は、プライベイトで定義した別名のデータベース(db2)に変更し、db2 = CurrentDb()
にすることで、解決しました。

ユーザー関数は、クエリ内や、フォーム、レポートなどで呼び出す関数となるため、データベースに接続済みか否かの判定を入れて動作させる分岐が複雑になるので、プライベイトで別に定義して、接続し、関数内でcloseするように変更しました。
PUBLICのdbは、フォームや、レポートで、利用時に接続してcloseしています。

異常終了は、ユーザー関数を呼び出した時はいつも、ということでなく、同じ操作をすると同じところで
異常終了していました。関数を繰り返し使用しているうちに、壊れてしまうということだったのかと思われます。

ありがとうございました。

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

0

Windows Updateの問題で不具合になるケースがあるのでその辺りを調べて、
最新の状態になっているかの確認、問題のありそうな更新プログラムのアンインストール等を行うなどお試しになればいいかもしれません。

投稿

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2019/09/11 14:14

    情報 ありがとうございます。
    DAOの接続の定義を変更して解消できました。不必要な接続を重ねて行うと、これまでは発生していなかったが、今回障害の発生したバージョンだと異常終了してしまったということかと思われます。

    解消できてほっとしました。ありがとうございました。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 89.70%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる