2012-02-29 14 views
7

私はLinuxに使用されていたCプログラムを書き直しています。今度はWindows上で再利用します。私はバットファイルを書きます。このファイルを管理者として実行すると、エラーが発生します。 syslog.h:そのようなファイルまたはディレクトリはありません。Windows上でsyslog.hを見つけることができません

いくつかのアドバイスをお願いします。どうも。

答えて

7

Windowsに移植するプログラムは、おそらくopenlogとcloselogに加えてsyslog(3)関数呼び出しを使用します。これらはUNIXのsyslog.hで定義されています。 Windowsはこれらを持っていないので、次の操作を実行できます。

  • 削除syslog.h及びこれらの機能は、コードから呼び出します。
  • syslog.hを作成し、これらの呼び出しを実装するか、空のマクロとして定義します。
  • POSIX互換性を提供するcygwinを使用してください。
+0

ありがとうb0ti – diligent

2

Windowsは、組み込みのsyslogクライアントを提供していません。 http://syslog-win32.sourceforge.netのようなサードパーティライブラリを使用することができます。

+0

Gregに感謝します。私はsyslog-win32-0.3.tar.bz2をexe形式ではなくダウンロードしています。私はそれを解凍しますが、ファイルがたくさんありますが、どこから始めたらいいですか、このツールをどうすれば使用できますか?ありがとう。 – diligent

+0

私は知らない、私はそれを使用したことがない。私はちょうど "win32 syslogクライアント"のためにGoogleを検索し、それが現れた。 –

+0

同じGregに感謝します。 – diligent

0

PHP source codeでは、Windowsの機能ReportEvent()に基づいてラッパーを見つけることができます。

例えば:wsyslog.csyslog.h

編集を見てみましょう:あなたはsyslog-serverを試してみましたか?

+0

@JeremiahGowdy私はあなたの発言に同意し、答えを更新しました。あなたは私の言い回しをどう思いますか?以前のコメントを削除することができます。乾杯 – olibre

関連する問題