• ベストアンサー

オラクルが存在した場合の起動プロセスのチェックについて

はじめまして、現在とても困っています。 プロセスの起動チェックを行いたいのですが、オラクルが存在した場合にRegCloseKey( HKEY_PERFORMANCE_DATA )でエラーになってしまいます。 原因がわかりません。だれか詳しく知っている方がいましたら助けてください。宜しくお願いします。 下記のHPと同様のプログラムです。 http://www.ylw.mmtr.or.jp/~akky/mfc/procheak.html

質問者が選んだベストアンサー

  • ベストアンサー
  • akinori_s
  • ベストアンサー率60% (21/35)
回答No.1

単純に考えればレジストリキーにアクセス権が無いのかなとも思ったのですが オラクルが存在しない場合にはうまくいくんですよね? とりあえず、GetLastError()とFormatMessage()でエラー内容を取得したほうが いいかもしれません。 あと単純な起動チェックでしたらNTの場合EnumProcessでもできるはずです。

関連するQ&A

  • オラクルのエラー

    すみません、オラクルに接続しようとすると 下記のメッセージが出てつなげないんですが、 原因はなんでしょうか。 オラクルは9i、OSはWIN2000です。 IMP-00058: Oracleエラー1033が発生しました。 ORA-01033: ORACLE initialization or shutdown in progress

  • 常駐し他のプロセスの起動を取得する方法

    test.exeというプログラムを作ります。 実行すると特定のプロセスの起動を待ちます。 特定のプロセスをnotepad.exeとします。 メモ帳(notepad.exe)が起動されたらtest.exeは何かします。 例えばMessageBox()とかで何か表示します。 どうやればいいのでしょうか? ・特定のプロセスが起動するまで待つ ・起動を検知する というところを教えてください。 VC++です。MFC,ATLなどは使いません。 特にウインドウなどはいらないので数行でできてしまうのであれば winmain()からお願いします。

  • プロセスを監視するシェルスクリプトのエラー

    現在作成している定期的にTCPサーバーに対してクライアントが動作しているかどうかを知らせるためパケットを送信するプログラムをpythonで作成し、ラズパイ起動時に自動起動でこのプログラムを起動しているのですが、起動する時としない時があるのでこのプロセスが正常に動作しているかどうかを確認したく、このようなプログラムを作成しました。 (tcp_client1_02_process_check.shの内容) #!/usr/bin/sh while true do #ここではftpdのプロセス監視 isAlive=`ps -ef | grep " sudo python /home/pi/Desktop/tcp_client1_02.py " | \ grep -v grep | wc -l` if [ $isAlive = 1 ]; then echo "プロセスは生きています" else echo "プロセスは死んでいます" sudo /home/pi/python/autorun_script fi sleep 3 done このプログラムはこのサイトを参考にさせて頂きました。 Linux上のプロセスを監視して、プロセスがダウンしたら再起動させるShell http://tech.thekyo.jp/linux%e4%b8%8a%e3%81%ae%e3%83%97%e3%83%ad%e3%82%bb%e3%82%b9%e3%82%92%e7%9b%a3%e8%a6%96%e3%81%97%e3%81%a6%e3%80%81%e3%83%97%e3%83%ad%e3%82%bb%e3%82%b9%e3%81%8c%e3%83%80%e3%82%a6%e3%83%b3%e3%81%97/91/ このプログラムを sh tcp_client1_02_process_check.sh これで起動すると次のようなエラーが出てきます。 tcp_client1_02_process_check.sh: 14: tcp_client1_02_process_check.sh: Syntax error: "done" unexpected (expecting "then") このエラーどのようなエラー内容なのでしょうか? どうぞ、ご教示いただきますよう宜しくお願い致します。

  • WSH レジストリのキーが存在するかチェックしたい

    WSHを使って、アプリケーションのインストール作業を行っています。 その際、現在インストールされているアプリケーションのバージョンをチェックするのですが、レジストリのキーが存在するかどうかの確認方法が分かりません。 現状は、RegReadにて、キーが存在するかどうかをチェックしようとしているのですが、キーを読み込んだ場合、規定値を読み込むため、規定値が「値の設定なし」になっている場合、エラーになってしまいます。 (キーが存在しない場合とエラーコードが同じのようで、エラーによるチェックも出来ません) 例)WScript.Echo WshShell.RegRead("HKEY_LOCAL_MACHINE\SOFTWARE\maker\softwere\5.0\") 何か、良い方法はありませんでしょうか?

  • オラクル8.1.7の再インストールについて

    オラクル8.1.7をクライアントでインストールしようと思っていたら 手順書を見誤りデータベース用のインストールをしてしまいました。 そこでアンインストーラー後、HKEY_LOCAL_MACHINE\software下の オラクルフォルダを削除。一度再起動してドライブ下のoracle フォルダを削除しようとしましたが、ocacle内のフォルダが一つ だけ削除できません・・・。レジストリも検索して削除しましたが たくさんありすぎて途中で止めてしまいました。 とりあえずもう一度インストールしてみたところエラーも無く 終わってしまいました。パッチもあててます。 この状態で使用しても大丈夫でしょうか? データベースが離れた所にあり、動作確認が出来ない状況です。 どなたかご教授いただけると助かります。

  • プロセスのハンドルを確保

    AプログラムからBプログラムを起動するプログラムを作成しています。 AはループでBプログラムを起動するのですが、Aでプロセスの起動数をチェックし、飽きのプロセスハンドルを確保しBプログラム意を起動する際にAで確保したハンドルを使用して起動するような処理をするにはどうしたらいいでしょうか? 例:プロセス最大起動数:5   Aは10回ループし、Bを起動する。   Aでプロセスハンドルを5個確保する。   Bを起動する際に確保したハンドルを1個使用する。   Bが終了したらハンドルを解放する。   

  • オラクルエラーの対処法

    よろしくお願いします。 オラクルエラーがでているのですが、紙ベースのリファレンスを 参照しても良く分からずに解決できませんでした。 こういうHPにいけばエラーの対処法が分かるよというような HPがありましたら教えてください。 ちなみにエラーは ORA-01033: ORACLE initialization or shutdown in progress です。

  • オラクル8.1.7クライアントと9.2クライアントの共存がうまくいかず困っています

    オラクル初心者です。 オラクル8.1.7クライアントが導入されているWindows XP のPCに、オラクル9.2クライアントをインストールし、バッチプログラムで9.2用のorahomeを見に行くように設定してから、あるプログラムを起動させたところ、「ORA-12154: TNSサービス名を解決できませんでした」というエラーメッセージが出てしまいました。 TSNPINGを行ったのですが、問題なく通りました。 どなたか、解決方法を教えてください。お願いします。

  • 起動中の他のプログラム(orプロセス)を強制終了できるアプリケーションの作成

    お世話になります。 掲題通り、起動中の他のプログラム(orプロセス)を強制終了できるアプリケーションを作成したいです。できる方いらっしゃるなら、教えてください。 宜しくお願いします。

  • 起動中のプロセスのメモリを書き換えるには

    フリーソフトを使用していて、アプリケーション終了時に毎回作者のHPが表示される。 ollyやバイナリエディタで編集すると、起動時にエラーが出て起動できなくなってしまう。 なので、実行中に書き換えるしかないのですが、この場合どのようなプログラムを書けば良いのでしょうか・・・。 C#での参考URL、または具体的なコードを教えて頂きたいです。 ※カテゴリにC#がなかったのでC++にしてます。