Windows 2000でOpenThreadというAPIを使いたいのですが、ヘッダにもlibファイルにも情報がないらしく、コンパイルできません。
これに対応しているヘッダとlibファイルはどうすれば手に入るでしょうか。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

MSDNにはOpenThreadは危険なんでLIBから削除しますみたいな事書いてありますね...


とりあえず今環境が無いので確かめれないんですけど、LIBを使わないで
動的に関数を呼び出してみたらどうでしょう。
ヘッダに定義されてないだけならなんとかなると思います。
駄目だったら・・・ごめんなさい
一応動的に呼び出すURLを乗せておきますので参考にしてください。

参考URL:http://msdn.microsoft.com/code/default.asp?url=/ …
    • good
    • 0
この回答へのお礼

そういえば、LoadLibraryとかありましたね。
参考URLにあるような、定義済みクラスは嫌いなので、ほかの方法を試してみようと思います。
ありがとうございました。

お礼日時:2002/01/16 13:26

http://support.microsoft.com/default.aspx?scid=k …
に次の文があります。

OpenThread() is exported by KERNEL32.DLL, but is not included in any of the SDK import libraries.


...どうも提供されていないようですよ。
    • good
    • 0
この回答へのお礼

うーむ、それは残念です。
あきらめてVBで使うことにします。

お礼日時:2002/01/16 13:24

下記のURLに記述しているヘッダにもlibファイルは調査されたということですよね?



参考URL:http://www.microsoft.com/japan/developer/library …
    • good
    • 0
この回答へのお礼

すみません、どういうことですか?
winbase.hにプロトタイプが載っていないので、無理やりMSDNライブラリを見てプロトタイプを書いたのですが、kernel32.libにリンク情報がないらしいので、新しいヘッダとライプラリファイルを入手したいのですが、これは入手できないのでしょうか?

お礼日時:2002/01/15 15:16

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qドラムスティック、Pro mark の cool rods に近い木以外のスティック教えて!

cool rods での音量や音質はとても気に入っているのですが、
先が欠けやすいため、樹脂性などの耐久性があり音質、音量も近いスティックをさがしています。
どなたかご存知の方いらっしゃいましたら教えて下さい。
よろしくお願いします。

Aベストアンサー

100円ショップに行けば、「竹ささら」という商品があります。
これは1本100円、1ペア200円とリーズナブルですので、これを
買ってきて、自分の好みの太さに本数を調節し、あとは太めの
生ゴムバンドで固定すれば、実戦でも使えます
使っているうちに割れたり欠けたりしますが、もともとの竹ささら
1本でスティック3~4本の分量がありますから、お得です。
一度騙されたと思ってお試し下さい。

QBorlandbcc55とMYSQLのコンパイル時にlibmysql.libやmysqlclient.libのリンクについて

Windows上で、borlandbcc55、mysqlを利用しいてます。
Windows上のborlandbcc55、mysqlで
C/C++のソースでMYSQLの接続・切断・管理・MYSQLのレコードの値の取得・値の表示の仕方の基礎を教えてください。
これなら動きますよというソースを教えて頂けたら有難いです。

Borlandbcc55とmysqlの設定

my_global.hとmysql.hをincludeして、

コンパイル時にlibmysql.libやmysqlclient.libをリンクしてやればできそうなのですが

includeは
Cのソースで
#include "c:\mysql\include\mysql.h"
#include "c:\mysql\include\my_global.h"
と記述するだけでOKなのでしょうか?

MYSQLのLibmysql.libの設定の仕方及びコンパイル時にlibmysql.libやmysqlclient.libを
リンクする方法がわかりません。

bcc55コンパイラ設定のcfgファイルにlibMysql.libやmysqlclient.libを
追加設定必要ですか?
必要ならどう記述すればいいのでしょうか?
また違う仕方なのでしょうか?
全く理解できていません。
そのリファレンスをみてもわかりません。

1 coff2omf c:\mysql\lib\opt\libmysql.lib c:\borland\bcc55\lib\libmysql.lib
2 ilink32 obj-Dateien, exe-Dateiname, map-Datei, Libraries
3 -> ilink32 c0x32.obj testmysql.obj , testmysql.exe , , import32.lib cw32.lib libmysql.lib

これらの設定の仕方もわかりません。
設定に必要なのかどうかも理解できていません。
よろしくお願いします。

Windows上で、borlandbcc55、mysqlを利用しいてます。
Windows上のborlandbcc55、mysqlで
C/C++のソースでMYSQLの接続・切断・管理・MYSQLのレコードの値の取得・値の表示の仕方の基礎を教えてください。
これなら動きますよというソースを教えて頂けたら有難いです。

Borlandbcc55とmysqlの設定

my_global.hとmysql.hをincludeして、

コンパイル時にlibmysql.libやmysqlclient.libをリンクしてやればできそうなのですが

includeは
Cのソースで
#include "c:\mysql\include\mysql.h"
#inclu...続きを読む

Aベストアンサー

>includeは
>Cのソースで
>#include "c:\mysql\include\mysql.h"
>#include "c:\mysql\include\my_global.h"
>と記述するだけでOKなのでしょうか?

ダメでしたか?

cfgファイルにはよくつかうオプションを記述する。
普通は -I オプション、-L オプション。
どこにインクルードファイル、ライブラリファイルを置いてるかをコンパイラやリンカに教えるため。
よく使うのであれば追加すればいい。


>1 coff2omf c:\mysql\lib\opt\libmysql.lib c:\borland\bcc55\lib\libmysql.lib
c:\mysql\lib\opt\libmysql.lib はVisual C++用のライブラリファイルなので、coff2omfで変換しないと使えない。

>2 ilink32 obj-Dateien, exe-Dateiname, map-Datei, Libraries


>3 -> ilink32 c0x32.obj testmysql.obj , testmysql.exe , , import32.lib cw32.lib libmysql.lib
リンカを使ったことはありませんか?

>includeは
>Cのソースで
>#include "c:\mysql\include\mysql.h"
>#include "c:\mysql\include\my_global.h"
>と記述するだけでOKなのでしょうか?

ダメでしたか?

cfgファイルにはよくつかうオプションを記述する。
普通は -I オプション、-L オプション。
どこにインクルードファイル、ライブラリファイルを置いてるかをコンパイラやリンカに教えるため。
よく使うのであれば追加すればいい。


>1 coff2omf c:\mysql\lib\opt\libmysql.lib c:\borland\bcc55\lib\libmysql.lib
c:\mysql\...続きを読む

Qcool rods の割れ防止に食用油塗布はどうでしょうか?

プロマークのクールロッズの割れ防止に何か塗布するとどうかと考えましたが、食用油などはどうなんでしょうか?身近なものだたそれぐらいしか思いつきません。木工家具には良く油など塗布し耐久性を良くしてるようですが、、、
アドバイスを願います。

Aベストアンサー

家具に塗られている油と食用油は、全く違うものです。
カノウプスのドラムにもオイルフィニッシュというのがありますよね。

家具や楽器のオイルフィニッシュは、ワトコなどの塗装用オイルで、木材に浸透した後は乾燥する成分でできています。
ただ、木材に塗布した後、表面の余分なオイル分はウエスでふき取る必要があり、これを行わないとべた付きます。

これに対して食用油は、本来木材保護の為に作られたものではありませんから、木材に塗っても乾燥せずいつまでもべた付きますし、保護効果が期待できないどころか、グリップ側の紙に染込んで始末におえなくなりそうです。

また、ロッズはドラムのヘッドやシンバルを叩くものですから、オイル系のものはそれらに油分が付着して汚れやすくなります。
それなら、まだクリアラッカーの方が良さそうですが、ロッズみたいに束になった棒をラッカーできれいに塗るのは難しいと思います。
また、ラッカーだと多少はタッチや音に影響が出るかもしれません。

ロッズをよく観察すると、棒の中には、木目が斜めに入った物もありますから、何かを塗って強度が上がるものでもなさそうです。
なので、消耗品と割り切ってそのまま使うのが無難だと思います。

耐久性を求めるなら、プラスチックなどを使った擬似ロッズを使うほうが良さそうです。

参考URL:http://www.hoxan.co.jp/watco/

家具に塗られている油と食用油は、全く違うものです。
カノウプスのドラムにもオイルフィニッシュというのがありますよね。

家具や楽器のオイルフィニッシュは、ワトコなどの塗装用オイルで、木材に浸透した後は乾燥する成分でできています。
ただ、木材に塗布した後、表面の余分なオイル分はウエスでふき取る必要があり、これを行わないとべた付きます。

これに対して食用油は、本来木材保護の為に作られたものではありませんから、木材に塗っても乾燥せずいつまでもべた付きますし、保護効果が期待でき...続きを読む

QLIBCMT.LIBをリンクしてコンパイルすると警告が。

LINK : warning LNK4098: defaultlib 'LIBC' conflicts with use of other libs; use /NODEFAULTLIB:library

というのがでるんですけど、もともとリンクしているLIBCというライブラリ?と、関数がかぶってしまっているためなんでしょうか。
/NODEFAULTLIBオプションを使え?みたいなことを言ってますが、
cl /?
で調べてもそんなオプションありませんし。
この場合の解決法のご教授をお願いします。

Aベストアンサー

コマンドラインを書いてもらえると問題が特定しやすいです。

ちなみに、/NODEFAULTLIBは以下のように指定します。

cl main.cpp other.lib /MT /link /NODEFAULTLIB:libc.lib

Qスレッド・アウェア(thread-aware)とはどういう意味でしょうか?

スレッド・アウェア(thread-aware)の意味を教えてください。

Aベストアンサー

>スレッド・セーフとは異なる「スレッド対応」なのでしょうか
英語の表現の問題だと思います。

thread-safe (thread-safety)だと、マルチスレッドでも安全に使うことができることを
強調しているのに対して、thread-aware だとマルチスレッドを考慮して作ってますよ。
な感じでしょうか。
英語版のWikipediaでは thead-safe(thread-safety)のエントリはありますが
thread-aware のエントリはないみたいですね。

Thread safety - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Thread-safety

Threads
http://library.gnome.org/devel/gdk/unstable/gdk-Threads.html#id2755107

のページにある記述を読む限りでは、thread-safe の方が thread-awareよりも
自由に(マルチスレッドであることを気にせずに)プログラムが
組めるということのようです。

GTK+ is "thread aware" but not thread safe ― it provides a global
lock controlled by gdk_threads_enter()/gdk_threads_leave() which
protects all use of GTK+. That is, only one thread can use GTK+ at
any given time.

>スレッド・セーフとは異なる「スレッド対応」なのでしょうか
英語の表現の問題だと思います。

thread-safe (thread-safety)だと、マルチスレッドでも安全に使うことができることを
強調しているのに対して、thread-aware だとマルチスレッドを考慮して作ってますよ。
な感じでしょうか。
英語版のWikipediaでは thead-safe(thread-safety)のエントリはありますが
thread-aware のエントリはないみたいですね。

Thread safety - Wikipedia, the free encyclopedia
http://en.wikipedia.org/wiki/Threa...続きを読む

Qzlib.libとlibpng.libについて

zlib.libとlibpng.libの作成ができなくて困っております。
libpng.libでpngAPIを使うには、zlib.libが必要だということで
zlib.libのビルドにも挑戦していますがうまくいきません。
これらのファイルを作るのが目的ではないので
どなたか配布できるならば配布していただけないでしょうか?。
もし配布できないなら作り方の詳細をご教授願います。

環境
Windows VISTA SP1
Visual Studio 2008

googleで検索して出てきたHPについては
ほとんど見ましたが
それをみてやっても上記環境ではうまくビルドができません。
*例えば以下 他にもたくさんみてその通りにやりましたが
エラーが大量にでてしまいうまくいきません。
http://dencha.ojaru.jp/programs_07/pg_graphic_10a1.html

大変 レベルの低い質問ですがよろしくおねがいいたします。
m(___)m

Aベストアンサー

有名なGNUプログラムなら、GnuWin32を探せばバイナリが見つかるでしょう。
http://gnuwin32.sourceforge.net/

http://gnuwin32.sourceforge.net/packages/zlib.htm
http://gnuwin32.sourceforge.net/packages/libpng.htm

Qlinux 共有オブジェクトの thread-safety

自作の Windows dll を linux に移植しようとしています。
gcc で so を作ります。

dll は thread-safe にしてあります。その dll の関数を呼び出したすべてのスレッドに、それぞれ固有のメモリ領域を割り当てます。そして、あるスレッドが終了したら、そのスレッドに割り当てられた領域を解放することができるように、「そのスレッドが終了するのを待つスレッド」を作って待機させるようにしました。これで意図どおり動作しています。

ところが、このライブラリを linux に移植しようと、簡単なコードを書いて調べてみたところ、pthread_join() は親スレッドが子スレッドの終了を待つ場合にしか使えないことがわかりました。上の「そのスレッドが終了するのを待つスレッド」を作る、という方法が使えません。

linux で任意のスレッドの終了を知る方法はないでしょうか?
あるいは、スレッド固有の領域を管理するもっと良い方法はあるでしょうか?
それとも、linux で thread-safety なんか考える必要は無いのでしょうか?

自作の Windows dll を linux に移植しようとしています。
gcc で so を作ります。

dll は thread-safe にしてあります。その dll の関数を呼び出したすべてのスレッドに、それぞれ固有のメモリ領域を割り当てます。そして、あるスレッドが終了したら、そのスレッドに割り当てられた領域を解放することができるように、「そのスレッドが終了するのを待つスレッド」を作って待機させるようにしました。これで意図どおり動作しています。

ところが、このライブラリを linux に移植しようと、簡単なコードを書...続きを読む

Aベストアンサー

pthread_join() はスレッドIDさえわかれば親だとか子だとか関係なく使えるはずなのですが、どうやってテストしました?

またpthreadにはクリーンアップハンドラという概念があるのでこれをうまく使えば同様のことが別スレッドなしで実現できます。

QWIN32APIとかC++のコンパイルについて

http://www.geocities.jp/ky_webid/win32c/001.html
のメッセージボックスに表示させるというプログラムソースをコピペして、コマンドからコンパイルしたら、

C:\study>cl wintest1.c
Microsoft(R) 32-bit C/C++ Optimizing Compiler Version 15.00.21022.08 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.

wintest1.c
Microsoft (R) Incremental Linker Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.

/out:wintest1.exe
wintest1.obj
wintest1.obj : error LNK2019: 未解決の外部シンボル __imp__MessageBoxA@16 が関数
_WinMain@16 で参照されました。
wintest1.exe : fatal error LNK1120: 外部参照 1 が未解決です。

と、怒られてしまったのですが、どの様にすればいいのでしょうか?

http://www.geocities.jp/ky_webid/win32c/001.html
のメッセージボックスに表示させるというプログラムソースをコピペして、コマンドからコンパイルしたら、

C:\study>cl wintest1.c
Microsoft(R) 32-bit C/C++ Optimizing Compiler Version 15.00.21022.08 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.

wintest1.c
Microsoft (R) Incremental Linker Version 9.00.21022.08
Copyright (C) Microsoft Corporation. All rights reserved.

/out:wintest1.exe
wintest1.o...続きを読む

Aベストアンサー

>wintest1.obj : error LNK2019: 未解決の外部シンボル __imp__MessageBoxA@16 が関数
>_WinMain@16 で参照されました。
>wintest1.exe : fatal error LNK1120: 外部参照 1 が未解決です。
>と、怒られてしまったのですが、どの様にすればいいのでしょうか?

リンク時にライブラリも指定してください。
MSDNによると…
>Minimum DLL Version:user32.dll
>Header:Declared in Winuser.h, include Windows.h
>Import library:User32.lib
>Minimum operating systems:Windows 95, Windows NT 3.1
>Unicode:Implemented as ANSI and Unicode versions.

とのことなので、User32.libもリンクする必要があります。

Q310-035の参考書の中にあるThreadとRunnableの説明

310-035の試験を1か月程勉強中です。スレッドについて頭がゴチャゴチャになってしまいました。
スレッドのインスタンス化ですが、
Threadを継承した場合は単純に
Thread t = new Thread()
でよいが、
Runnableを実装した場合は、
1行目// MyRunnable r = new MyRunnable();
2行目// Thread t = new Thread(r)
とする。とあります。
説明として、「Runnableの場合はスレッド自身のrun()メソッドではなく独自に定義したrun()メソッドを使用するようにするため」とあるのですが、何をいわんとしてるのか、この説明の意味がわからないのです。。
「スレッド自身のrun()メソッド」「独自に定義したrun()メソッド」って何のことを指してるんでしょうか。
「Threadを継承した場合」はオーバーライドしているので「スレッド自身のrun()メソッド」を見てるってことでしょうか。??
それと、どうしてRunnableの場合は、Threadをextendしてないのに急に2行目のところでThread が現われるんでしょうか。

アドバイスを頂けると助かります。宜しくお願いします。

310-035の試験を1か月程勉強中です。スレッドについて頭がゴチャゴチャになってしまいました。
スレッドのインスタンス化ですが、
Threadを継承した場合は単純に
Thread t = new Thread()
でよいが、
Runnableを実装した場合は、
1行目// MyRunnable r = new MyRunnable();
2行目// Thread t = new Thread(r)
とする。とあります。
説明として、「Runnableの場合はスレッド自身のrun()メソッドではなく独自に定義したrun()メソッドを使用するようにするため」とあるのですが、何をいわんとしてるのか、こ...続きを読む

Aベストアンサー

>java.lang.ThreadのインスタンスというのはだいたいThreadを拡張(extends Thread)しないとできないんじゃないか・・と思い混乱しています。
そんなことはありません。
extendsしていないjava.lang.Threadのインスタンスは取得できます。

>Runnableの実装の場合について、(以下略)
>これってどうしてなんでしょうか。
逆に聞くと、何で素のjava.lang.Threadのインスタンスが作れないんですか?
と言うことになります。

落ち着いて考えてください。
runの中身を「Threadの子クラス」に書くか、「Runnableを実装したクラス」に書くか、です。
Threadをextendsするのは「Threadの子クラス」を使うやり方だけです。
「Runnableを実装したクラス」を使う場合はThreadには手をつけません。
---------------------------

2つのやり方があるのです。

●Threadの子クラスを使う
Threadを継承、run()をオーバーライドするのは、Threadの子クラスのインスタンス単独でスレッドを走らせるときのみです。
このときは実行する処理を「Threadの子クラスのrun()」に書きます。

public myThread extends java.lang.Thread {
public void run() {
/*別スレッドでやらせたい処理*/
}
}

myThread th = new myThread();
th.start();

●Runnableを実装したクラスを使う
素のThreadクラスとRunnableインターフェイスを実装したクラスのインスタンスをでスレッドを走らせるときは、Threadの継承、run()をオーバーライドする必要はありません。
このときは実行する処理を「Runnableインターフェイスを実装したクラスのrun()」に書きます。

public anyRunnable Implements java.lang.Runnable {
public void run() {
/*別スレッドでやらせたい処理*/
}
}

anyRunnable anyRun = new anyRunnable ();
Thread th = new Thread(anyRun);

th.start();

Threadの継承は必須ではありません。

>java.lang.ThreadのインスタンスというのはだいたいThreadを拡張(extends Thread)しないとできないんじゃないか・・と思い混乱しています。
そんなことはありません。
extendsしていないjava.lang.Threadのインスタンスは取得できます。

>Runnableの実装の場合について、(以下略)
>これってどうしてなんでしょうか。
逆に聞くと、何で素のjava.lang.Threadのインスタンスが作れないんですか?
と言うことになります。

落ち着いて考えてください。
runの中身を「Threadの子クラス」に書くか、「R...続きを読む

Qコンパイル済みhtmlファイルの逆コンパイル

Visual studio 6.0をもらいました(前所有者は.IEのインストールができなくて挫折)。
Vcツールのどこかに.コンパイル済みhtmlファイル(*.chm)を元のhtmlファイルに戻すツールがあると.どこかのサイトでみたような気がします。
ツール名をご存知の方いらっしゃいませんか。
また.日本語(当方コンピューター関係英語はさっぱりわからず)の使い方を説明したファイルかサイトはありませんか。

ヘルプファイルをテキスト形式等他に利用できる(機械翻訳可能な)形に一括変換するツールをご存知の方いらっしゃいませんか。

Aベストアンサー

>Vcツールのどこかに.コンパイル済みhtmlファイル(*.chm)を元のhtmlファイルに戻すツールがあると.どこかのサイトでみたような気がします。

chmを作成するためのHTML Help Workshopで戻せます。

http://www.keiyu.com/help/
をどうぞ。
コマンドはQ&Aに書いてあります。

参考URL:http://www.keiyu.com/help/


人気Q&Aランキング