• 締切済み

Windows7

WindowsXPのサービス期間終了に伴いWindows7への移行作業を行っていますが、 WindowsXP環境下でVB6で作成したプログラムをパッケージ化後、 Windows7のPCにインストールし、稼動を確認したところ 『実行時エラー”53”: ファイルが見つかりません:VnFD(dllファイル)』 とエラーとなりました。 WindowsXPでは問題なく稼動していました。 dllファイルはありますが、無いと認識している模様です。 対処法を教えて下さい。 dllファイルもEXEファイルと同じフォルダにあります。 パッケージソフトはMicrosoft Visual Studio6.0ツールのディストリビューションウィザード を使用しています。

みんなの回答

回答No.1

私はVB使いでは無いので外しているかもしれませんが、以前VB6から呼出されるDLLが「実行時エラー53」と指摘を受け、確認した時のことを書きます。 尚、 >VB6で作成したプログラム のソース&ビルド環境がないなら以下は無用のこととなります。 VB6側にDeclareでDLLのパスをフルパスで指定する。EXEフォルダと同一であれば「.\・・・.dll」で良いと思われます。 DLLのパスは、カレント→%SYSTEMROOT%System32(syswow32)→%SYSTEMROOT%→%PATH%と認識しているのですが、不思議なことに不具合の出るPCは上のようにフルパスで指定しないとエラーになっていました。(すみません当時根本原因まで行き着いていません) 「dependency waker」↓などでDLL呼出し状況をみるといいかもしれません。 http://www.dependencywalker.com/ また、DLLのエクスポート名がVB側と合っているかも確認必要です。DLLの造りによっては関数名が「Function@番号」みたいな場合もあります。 補足。  Windowsのエディション、アーキテクチャも書いたほうがより正確な回答が得られると思います。 以上外しているかもしれないけど、レスつかないので「藁」と思召して。

gonta1842
質問者

お礼

回答ありがとうございました。 フルパス指定にしてみましたが、同じ結果(実行時エラー53)となりました。

関連するQ&A

  • ディストリビューションウィザードの使用してのsetup.exeの再作成について

    VB初心者ですが、以下の事が可能であるかを教えて下さい。 現在既存の正常に稼動する実行ファイルがあります。 その実行ファイルは、ディストリビューションウィザードの使用して パッケージを作成し、そのsetup.exeを使用しインストールしてあります。 システム(?)の構成としては、メインのexeファイルといくつかのDLLから 構成されています。 このDLLのうちの一つとメインのexeファイルを変更して (正しくいうと、メインのプロジェクトに修正変更をかけexeファイルを作成し直し  サブのプロジェクトに修正変更かけDLLファイルを作成し直す。) 変更した物と変更していない物に関しては既存のパッケージ時のDLLを使用し ディストリビューションウィザードを用いてsetup.exeを再作成しても インストール後は正常に動作する物なのでしょうか? どなたか、ご教授下さい。宜しくお願いいたします。

  • VBでSCRRUN.dllエラー

    お世話になります。 VBでEXEファイルを作成後、ディストリビューションウィザードでパッケージを作ろうとすると、「SCRRUN.dllの依存情報が古い」と出てしまいます。 そこで、Microsoftのページをみたところ、ファイルシステムオブジェクトを利用している為、Scrrun.depのバージョン情報を書き換える必要があることがわかったので、やってみたのですが、再起動しても同じエラーが出てしまいます。 どうしたらいいでしょうか?

  • ディストリビューションウィザードの不足ファイルが解決できない。

    ディストリビューションウィザードの不足ファイルが解決できない。 OS:Windows2000 Visual Basic 6.0 Visual Basic 6.0にてアプリを作成し、 納品のためディストリビューションウィザードで setup.exeを作成しようとしています。 ところがディストリビューションウィザードで [プロジェクトの選択]でプロジェクトを選択後、 [パッケージ]ボタンを押下すると下記[不足ファイル] ダイアログ ボックスが 上がって、先に進めません。 不足ファイル: Crystal u25store.dll u25total.dll VBで作成したアプリではCrystal Reportsを使用しています。 また、上記dllもPC内に存在していないことは確認しています。 個別で上記dllをダウンロードする必要があるのでしょうか。 上記dllをWebで検索したのですが、ダウンロードできるサイトは 見つけられませんでした。 また、Crystalという項目に関しても、Crystalというファイルは 存在していません。Crystalというフォルダはありますが、 ファイル名がCrystalというものはありません。 解決方法をご存知の方いらっしゃいませんでしょうか。

  • kernel32.dllファイルがコピーできませんエラー

    お世話になります。 VB6.0で作成したプロジェクトのEXEを作成し、ディストリビューションウィザードでパッケージを作成しました。 同じマシンでこのSetupを起動すると、「ファイルのコピー中にエラーが発生しました:kernel32.dll」と出てしまいます。 ウィルス検索ソフトは止めてあるし、他のソフトも起動していない状態なのですが、このエラーを抜ける方法はないでしょうか?

  • VisualBasicのセットアップ用パッケージについて

    VB6.0のディストリビューションウィザードで作成したパッケージについて教えてください。 VB6.0のディストリビューションウィザードでsetup.exeを作ったのですが、MicrosoftAccessのパッケージのsetup.lstの[RunCommands]のように別プログラムを自動起動させたいと思っています。 VBのSetup.exeでも別プログラムを自動起動させる方法はあるでしょうか? ご回答よろしくお願いいたします。

  • セットアップ出来ません

    VBで作ったアプリケーションをディストリビューションウィザードでパッケージ化したものを、自身のパソコンにセットアップしようとすると、 「Path or File Not Found」 「○○(exeファイル名)が見つかりません。」 となってしまい、セットアップ出来ません。 exeファイルの前に"@"が付いているのが気になりますが、関係ないんでしょうか? 原因と対策をよろしくお願いします。 環境:Windows2000、VB6.0 EnterpriseEdition SP5

  • インストーラ実行中にエラーが発生

    初歩的なことかもしれませんが教えて下さい。 Windows2000のVB6.0で開発したアプリをディストリビューションウィザード(Visual Studio6.0)でインストーラを作成しました。実際に、このインストーラでインストールを実行すると、インストールの最初で以下のエラーが発生してインストールできません。但し、インストールするPCによっては正常にインストールできる場合もあります(OSはWin98、2000で出来たり出来なかったり)。なぜこういった現象が発生するのか教えて下さい。 エラー:インストールで指定された'パス\ファイル名'が見つかりません。

  • ディストリビューションウィザードを使って...

    Windows2000/VB6で作成したプログラムをディストリビューションウィザードを使用しての配布を考えていますが、パッケージ作成後に以下のメッセージが表示されます。 「インストール パッケージ内に mdac_typ.exe が含まれています。このパッケージをwindows 95 または98 上にインストールする場合は、DCOM98 が必要になります。」 ここで出てくるDCOM98とは何でしょうか?またどこにあるものなのでしょうか?Win98にも配布したいと考えていますので、ご存知の方は教えてください。

  • Visual Studio InstallerでDLL類が自動で追加さないようですが

    VisualBasic6.0で作成したプロジェクトを配布可能な状態にしたいのですが、今までディストリビューションウィザードを使用していましたが、Visual Studio Installerの使用を試みました。DLL類は自動で追加されないものなのでしょうか。 (1)(画像ファイルやデータファイルは手作業で「アプリケーションフォルダ」に追加したのですが)DLLなども手作業で追加しないとならないのでしょうか。 (2)もしも手作業で追加しないといけないならば、ディストリビューションウィザードで作成されたCABファイル内の、「DLL、OCX、EXE、TLB」全てを(SETUP1.EXEは除くでしょうか)「Windowsシステムフォルダ」に追加すればよいのでしょうか。 勝手に追加して不具合が起こるといけないと思い、質問させていただきました。恐れ入りますがご教授いたいただきたくお願いいたします。 ちなみに、Visual Studio Installerは以下のような手順で操作しました。もしも操作が間違っているせいで、DLL類が追加されないならば、ご指摘いただけるとありがたく存じます。 「新規作成」画面で「Visual Basicインストーラ」のアイコンをダブルクリック。 →Visual Basicプロジェクトを選択してくださいという表示に「参照」ボタンで「~.vbp」を選択。 →「インストーラを作成」にチェックを入れ「日本語コードページに対応」を選択。 →その後、必要な画像ファイルやデータファイルを「アプリケーションフォルダ」に追加。 →「ビルド」→「ビルド」を実行。 ちなみに、インストーラを変えたい理由は、「ダブル バイト文字を使用したユーザー名でログインしすると、エラーが発生する」のを回避するため、マイクロソフトのページに記載の対策をとっていたのですが、必ずしもうまくいかない場合があるようだったからです。 以上恐れ入りますがよろしくご教授いただきたくお願いいたします。

  • visual studio2005にて

    visual studio2005 スタンダードだと、ディストリビューションウィザードはありますか?。