トップ回答者
サービスプログラムだとエラー

質問
-
お世話になっております。
サービスプログラムから、データベースAとデータベースBの同期をとるプログラムを作成しております。
同期を取るプログラムをサービスで定期的にコールしています。
同期を取るプログラムの動作確認をしたところ正常にデータベースの動機が取れております。
ところがサービスから実行すると
'hoge.mdb'は正しくありません。パス名に間違いがないことと、ファイルが置かれたサーバーに接続していることを確認してください。
となりデータが取得できません。
パスは合っているのか、アクセス許可はあるのか、と調査もしましたが
単体では動作しているので、同コードでアクセス出来ないとは考えられません。
なぜサービスからの動作だと、上記エラーが起きるのでしょうか??
どうか、ご教示ください。
追記:
大事な事を忘れていました。
本プログラムは、XPでVS2005にて開発しておりますが
動作PCは、Windows7の64bit版です。
Wn32では動作するのに、64bitでは動作しないということです。
回答
すべての返信
-
アクセス許可がないかパスが間違っているのではないですか?
そもそも権限が違う…単体で起動するときは administrator 等の特定のユーザで、サービスから起動するときは SYSTEM 等でログインしているとか、
ネットワーク上にアクセスするときの認証情報をどのようにして提供しているかとか、
指定されたパスに特定のユーザにしか存在しないパス(プロファイルや、ネットワークドライブなど、ログインする人によって違うようなもの)が含まれているとか、
可能性はいくらでもあるので、何を確認してOKだと判断されたかを明示されると、他の人もこたえやすくなるのではないかと思います。