• 締切済み

データベースのオープンエラーが発生

WindowsVista SP1にてメニューから特定のプログラムを実行すると Accessデータベースのオープンにてエラーが発生します。 言語はVB6.0です。 メニューからShellExecute "runas"にて実行を行うとAccessデータベースのオープンにて 実行時エラー3051が発生します。 EXEをダブルクリックしたり、Shellにて実行した場合は正常にオープンされます。 lngLoadPgm = ShellExecute(0, "runas", "C:\WORK\TEST.EXE", "", vbNullString, 1)  NG lngLoadPgm = Shell("C:\WORK\TEST.EXE", vbNormalFocus)               OK 原因がまったくわかりません。 わかる方がいましたら教えて下さい。 よろしくお願いします。

みんなの回答

回答No.1

質問に書かれていないが、言語が VB.NET だとすると Declare の宣言が間違ってるとか。 「VB.NET ShellExecute」 でググってヒットする大半が Declare の宣言ミスで悩んでいる内容。 http://www.google.co.jp/search?hl=ja&q=vb.net+shellexecute&lr=lang_ja http://okwave.jp/qa/q1302680.html http://okwave.jp/qa/q1302680.html まぁそれぐらいは既に自分で検索してるだろうから回答として外している可能性が大きい。

関連するQ&A

  • ShellExecuteのコマンドについて

    すみません、どなたか教えてください。 下記のコマンドですが、 ShellExecute(null,"open","cmd.exe","実行したいもの",NULL,SW_HIDE); "実行したいもの" の書き方なんですが、 "/c c:\\work\\test.bat" のように書くと、cmd.exeにtest.batを実行させることができたんですが、 実行したいtest.batが指定できず、変数でセットする場合の書き方が分かりません。 ShellExecute(null,"open","cmd.exe","/c c:\\work\\test.bat",NULL,SW_HIDE); ↓ ShellExecute(null,"open","cmd.exe","/c c:\\work\\ "" & 変数 & "",NULL,SW_HIDE); こんな感じだと思うのですが、変数をダブルクォーテーションで囲むときに、ダブルクォーテーションをいくつ重ねるのかが分かりません。ググっているのですが、どこを調べていいのか分からず、はまっています。どなかたアドバイスお願いします。C++です。

  • データベースエラー

    お気に入りに入れて、いつも見ているサイトにアクセスしたところ 下記のメッセージが出てアクセスできませんでした。 解決法を教えてください。 データベースエラーが発生しました。 指定された設定でデータベースサーバに接続できません。

  • ファイルへのアクセスでエラーが発生

    アクセスデータベースで突如イベント実行時、 ファイルへのアクセスでエラーが発生しました。ネットワークへの接続が切断されている可能性があります。 というエラーメッセイージがあり、データベースが使用不可になっています。対処方法を教えてください。

  • データベースプログラムで発生したエラー

    データベースプログラムを作成し、他のパソコンにインストールしました。データベースのもとはAccessで作成し、UDLファイルを経由してDataGridに現れるようにしています。 ところが、他のパソコンで実行テストしてみたところ。「指定したプロバイダがありません。」とでてしまいました。指定したプロバイダとは、「Microsoft JET 3.51 OLE DB Provider」のことであり、これが見つからないということだと思います。 このプロバイダを他のパソコン上に入れ込まなければならないのでしょうか?そうだとしたら、その方法は如何なるものでしょうか? なにとぞよろしくお願い致します。

  • VB6でデータベースを変えるとテーブル形式エラーになります

    VB6 とACCESS97 でプログラムを作成、問題なく動いていました。 事情により、このパソコンにACCESS2000をインストールし(ACCESS97 と ACCESS2000 の二つが入っています)VB6のデータベースをACCESS2000に変換しました。 VBの参照設定をMicrosoft Access8.0 Object Livery から9.0 に換え、ACCESS 2000のデータベースのプロパティでファイルの種類をMicrosoft Access から Microsoft Access for Windows に換えました。 これを実行すると「実行時エラー3343 データベースの形式 "C:\SALES\TEST.mdb" を認識できません」と出ます。 他に修正すべきところがあるのでしょうか?それともバージョンの違うACCESS を併用するのはまずいのでしょうか? TEST.mdb をクリックすると、ACCESS2000で問題なく立ち上がります。 なお、VBからACCESSへの接続は下記のように書いています。 Public DB As DAO.Database Set DB = DBEngine.Workspaces(0).OpenDatabase("C:\SALES\TEST.mdb") 宜しくお願いします。

  • 拡張子(wsf)の実行

    お世話になります、タイトルについて質問をお願いします。 管理者権限にてWsfファイルを実行しようとしています。 cmd.exeより runas /user:管理者アカウント c:\test.wsf 上記実行すると、 「Runasエラー:実行できません。 193:c:\test.wsfは有効なWin32アプリケーションではありません」 と、表示され管理者権限にて実行することができません。 ちなみに該当ファイルを直接実行、 cmd.exeからファイルを指定して実行すると問題なくファイルが実行されます。 これはRunasの仕様なのでしょうか。 何かRunasから実行できる方法があれば教えてください。 以上、宜しくお願いいたします。

  • VB6.0から起動したexeファイルを終了するとエラーが発生して困っています

    VB6.0(OSはWindowsXP)中からShell関数を利用してexeファイルを起動したのですが、そのexeファイルを終了すると決まってアプリケーションエラーが発生します。これを直接かショートカットで実行して終了するとエラーは出ません。どなたか考えられる原因や解決策をご存じの方、教えて頂けませんでしょうか?よろしくお願い致します。

  • ASPによる アクセス2000のデータベース更新について

    アクセス2000で作成したデータベースに ASPでデータベースを更新しようとしたのですが、エラーとなって更新できずにいます。 (アクセスデータベース内容) ID F1 F2 1 TEST1 TEST2 2 1 2 3 4 5 4 23 ※ID の 5  に 23 を登録したい。 (ASP内容) <% ' データベースへの接続を開始 Set cn = Server.CreateObject("ADODB.Connection") cn.Open "Driver={Microsoft Access Driver (*.mdb)}; " & _ "DBQ=" & Server.Mappath("TESTdb1.mdb") cn.Execute"INSERT INTO TTT(ID,F1) VALUES(5,23);" %> (エラー内容) エラー タイプ Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] 更新可能なクエリであることが必要です。 /SQL-TEST/ncsch1.asp, line 7 アクセスの追加クエリで、INSERT INTO TTT(ID,F1) VALUES(5,23); を 実行したら、問題無く 5 23 が登録できましたので、データベース自体に他からの実行の場合、更新出来ないような 設定になっていると思うのですが、対処方法がわかりません。 どうすればよいか教えて頂けないでしょうか?

  • Visual C++2008でおきたエラーについて

    現在VisualC++2008でゲームを作っているのですが、 BGMをつけようと思いプログラムを少し追加したのですが test.exe の 0x005653b1 で初回の例外が発生しました: 0xC0000005: 場所 0x00000060 を読み込み中にアクセス違反が発生しました。 test.exe の 0x005653b1 でハンドルされていない例外が発生しました: 0xC0000005: 場所 0x00000060 を読み込み中にアクセス違反が発生しました。 プログラム '[2956] test.exe: ネイティブ' はコード 0 (0x0) で終了しました。 と言ったエラーが出てきてしまい止まってしまいます、とりあえずCtrl+Zで最初の状態にもどしたにもかかわらず実行しようとすると上と同じエラーが出てきてしまい起動できなくなってしまいました、上のエラーはどのようなときに起こるのでしょうか?それとどうすれば回避できるか教えてくださいm(_ _;m) ソースファイルを張りたいのですが2000文字超えているのでむりでした・・・。

  • 長文:このデータベースは予期しない状態のため 修復できません

    OS:Windows2000&XP Access Version:2000と2003 よろしくお願いいたします。 ACCESSファイルオープン時開くことができません。 表示メッセージは このデータベースは予期しない状態のため、開くことができません。 このデータベースは、[ツール]メニューの[データベースユーティリティ]の[変換]コマンドではなく、DAOのCompactDatabaseメゾットを使って、以前おバージョンの形式から変換されています。このため、データベースの一部が正しく変換されません。 元のデータベースがあるときは、[ツール]メニューの[データベースユーティリティ]をポイントし、[変換]をクリックして、データベースを変換してkださい。テーブルとクエリ以外のデータベースオブジェクトを回復することはできません。 Access2003とAccess2000のマシン共同でアクセスしていましたが、急に上記メッセージが表示されファイルオープンできなくなりました。 Access2000,2003にて修復(表示のメッセージに従って)してみましたが実行されませんでした。 長文になり申し明けありませんが、よろしくお願いいたします。

専門家に質問してみよう