ページ 11

お助け下さい

Posted: 2011年2月05日(土) 11:28
by KSK

お助け下さい!
Visual C++2010 Express を使っていいるのですが、
下記のプログラムを書いて実行しました。

コード:

#include <windows.h>

int WINAPI WinMain( HINSTANCE hInstance , HINSTANCE hPrevInstance , LPSTR lpCmdLine , int nShowCmd )
{
	return 0 ;
}
すると、
LINK : fatal error LNK1104: ファイル 'kernel32.lib' を開くことができません。
というエラーが出ます。
どうしたらいいでしょうか?
因みにインクルードディレクトリは$(WindowsSdkDir)includeで
ライブラリディレクトリは$(WindowsSdkDir)lib
です。

Re: お助け下さい

Posted: 2011年2月05日(土) 11:30
by KSK
追加
$(WindowsSdkDir)libをみてみたらkernel32.libがありました。

Re: お助け下さい

Posted: 2011年2月05日(土) 11:33
by Ciel
かなり面倒そうですね。
ググってみたらこんなのがありました
http://oshiete.homes.jp/qa3988587.html
http://detail.chiebukuro.yahoo.co.jp/qa ... 1135860471
参考になれば。

Re: お助け下さい

Posted: 2011年2月05日(土) 14:47
by KSK

ありがとうございます。
ただVisualC++2010 Expressではないので出来ませんでした。

Re: お助け下さい

Posted: 2011年2月05日(土) 17:41
by toto
よくわかりませんが、ツールからそのライブラリーが入ったフォルダを指定しているのですか?

Re: お助け下さい

Posted: 2011年2月05日(土) 21:50
by YuO
  • VC++のIDEからビルドしている
  • コマンドラインからビルドしている
のどちらで起きているのでしょうか。
$付きの表記を見ると,VC++のIDEっぽいのですが……。

もし,コマンドラインからのビルドであれば,設定はそれぞれ独立しているため,VC++のIDE上でいくら設定しても,コマンドラインでビルドする場合には意味がありません。
コマンドラインでビルドする場合には,「Visual Studio コマンドプロンプト (2010)」でcmd.exeを起動するか,
VC++2010のインストールディレクトリ以下にある,vcvarsall.batをx86オプション付きで実行しておく必要があります。

Re: お助け下さい

Posted: 2011年2月06日(日) 11:20
by KSK
いえ、コマンドラインからビルドはしていません。

Re: お助け下さい

Posted: 2011年2月06日(日) 11:50
by softya(ソフト屋)
上にある知恵袋の情報からするとインストールに問題があった場合に出る可能性があるみたいです。
Visual C++2010 Express を再インストールしてみたらどうでしょうか?

Re: お助け下さい

Posted: 2011年2月06日(日) 12:49
by KSK

やってみます。

Re:

Posted: 2011年2月06日(日) 12:56
by アトラス
もしかすると、プロジェクトの保存場所が悪いかもしれません。
保存場所をデスクトップなどいろいろ変えて試してみてください。

Re: お助け下さい

Posted: 2011年2月06日(日) 14:54
by KSK

再インストールしても、保存場所を変えても無理でした。

Re: お助け下さい

Posted: 2011年2月06日(日) 14:59
by KSK

一つわかったことがあります。
プロジェクトを変更していないのに「このプロジェクトは変更されています」と出ます。

Re: お助け下さい

Posted: 2011年2月06日(日) 15:42
by ISLe
メニューの『ツール(T)』→『設定(S)』→『リセット(R)...』を実行してみてください。

それで改善しない場合は、いったんアンインストールして、以下のフォルダを削除、その後インストールし直してみてください。
C:\Users\(ユーザー名)\AppData\Local\Microsoft\VCExpress\10.0
C:\Users\(ユーザー名)\AppData\Roaming\Microsoft\VCExpress\10.0

Re: お助け下さい

Posted: 2011年2月06日(日) 18:08
by KSK

アンインストールするのはMicrosoftVisualC++2010Expressでいいんですよね。

Re: お助け下さい

Posted: 2011年2月07日(月) 13:34
by KSK

アンインストールしても同じエラーが出ます。
どうしたらいいでしょうか?

Re: お助け下さい

Posted: 2011年2月07日(月) 16:11
by softya(ソフト屋)
アトラスさんのプロジェクトの保存場所を変えるってことはされましたか?
試しに新規プロジェクトを別のフォルダに作ってみてください。

もし、それでもダメならVisualC++2008を試してみることをお勧めします。
http://cvwww.ee.ous.ac.jp/vc08inst.html

Re: お助け下さい

Posted: 2011年2月07日(月) 17:09
by ISLe
アンチウイルスソフトがkernel32.libをロックしている可能性があるかも。

Re: お助け下さい

Posted: 2011年2月07日(月) 18:34
by KSK

DXLibプログラミングなら出来るので、諦めようかと思います。

Re: お助け下さい

Posted: 2011年2月08日(火) 12:33
by KSK

アンチウィルスはどうやったら見つけられるのでしょうか?

Re: お助け下さい

Posted: 2011年2月08日(火) 12:49
by softya(ソフト屋)
お助けしたいのですが、どのアイデアは試されて、どのアイデアが試されていないのか分からないのでこちらとしても状況がつかめません。
アンチウィルスの件なら一時的に停止してみるしかないでしょう(どのアンチウィルスソフトなのかも情報が提示されてませんし)。

Re: お助け下さい

Posted: 2011年2月08日(火) 17:42
by KSK

諦めます。

Re: お助け下さい

Posted: 2011年2月08日(火) 21:10
by bitter_fox
[引用]http://blogs.yahoo.co.jp/sireline_m/43094997.html
sireline さんが書きました:現象:kernel32.libが開けません。
原因:Platform SDKをインストールしていなかった?
 http://www.microsoft.com/japan/msdn/vst ... tools.aspx
 対応表ではSP1なら、何も無くても動作しそうなんだがなぁ…。

対処:
 1.Platform SDKをインストール
  Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1
 2.「スタート」 - 「Windows SDK Configuration Tool」を起動
 3.Installed Windows SDK Version:V7.0 を選択し、「Make Current」ボタンをクリック

以上で、正常にビルド出来るようになった。
これを試していただけますか?