プロが教えるわが家の防犯対策術!

いつもお世話になっています。
自分で出来る限り調べてみたのですが、どうしても解決しません。
どうか詳しい皆様のお力添えをお願いします。

質問内容なのですが、
Terapadでプログラムを書いた後、
「プログラム名.c」という名前でデスクトップにある「source」という名前の
フォルダに保存しました。

Borland C++ Compiler 5.5を用いてコンパイルしようとしたところ
質問タイトルのようなエラー
「エラー E2133: コマンド 'ilink32.exe' を実行できない」が出現し困っています。

PATHというものの設定がうまく出来ていないのかと思い、
「setbcc」というツールを使って設定した後、再起動して、再びコマンドプロンプトで
「c:\省略\desktop\source\」という場所まで行き、「bcc32 プログラム名.c」と入力し
コンパイルを試みたのですがやはり同様のエラーが出てしまいます。

CドライブのBorlandフォルダを一旦削除したのち、再インストールし、
Setbccによる同様の設定をし、再起動したあと、同じことをしてみましたがやはりダメでした。

Setbccによる設定は、特に弄っておらず、「次へ」ボタンを押しています。

参照したところです
http://oshiete.goo.ne.jp/qa/1242772.html
http://questionbox.jp.msn.com/qa4666354.html
http://hpcgi2.nifty.com/natupaji/bbs/patio.cgi?m …

当方のOSはWin7 64bitです。

ちなみに数か月前にもプログラミングをやっていて、
参考書を見ながら進めていたのですが、その時は問題なくコンパイルできていました。
そのときも今回同様の環境、Sourceフォルダを使っていて、場所も同じです。一切いじっていません。
なのに出来なくなってしまいました…。

自力では解決できず悩んでいます。お願いします助けてください!

A 回答 (6件)

なんか書いててかなり長くなってしまったので先に謝っておきます。

_| ̄|○

それってつまりWindowsのシステムがロックしてるってことじゃ…

言わなくても分かると思いますが、もうWindowsの再インストールレベルの問題ですよ、コレ。

まさかコレじゃないですよね?ね?

Windows7でフォルダ・ファイルへのアクセスが拒否される問題
http://believe1974.blog44.fc2.com/blog-entry-203 …
http://d.hatena.ne.jp/rero/20050918/p1

あとはBCCのインストール場所を変えてみるとか。
その場合、No1さんが言ってる設定で「C:\Borland\BCC55\~」となっている所を
「インストールした場所のパス\~」に置き換えて設定してください。
たとえば「C:\Programming\Borland\BCC55」にインストールしたなら、
bcc32.cfgの内容は

-I"C:\Programming\Borland\BCC55\Include"
-L"C:\Programming\Borland\BCC55\Lib"

となります。

ilink32.cfgとPATHも同様に置き換えます。
SetBccはWindows7での動作が保障されて無いので使わないほうがいいでしょう。

さらに念押し。
私が確認したbcc32とilink32のハッシュを書いておきます(MD5)

bcc32.exe
日本語版 C36741FB349F8D13A81B557AD5BECAB8
英語版 EFB740DF5FDE234CF558042443220BB7

ilink32.exe
日本語版 F6EEAA5D5A33AA0F7C97BBAE50D2B3E5
英語版 02A312CD73A826BA4E707AD4F88F900B

ハッシュとはファイルのIDのようなもので、データが1バイトでも違えば全く違う値になり、
同じデータならファイル名や更新日時などが違っても必ず同じ値になります。
つまりハッシュを比較することでファイルの破損や改ざんをチェックすることが出来ます。
ハッシュ計算ツールが無い場合はこちらが使いやすいでしょう。
http://www.vector.co.jp/soft/win95/util/se283188 …

これでダメならWindowsのシステム系も止めて実験するしかありません。
クドイようですが自己責任で。

大事なことなので最初に言っておきますが、
下記操作によってネットが一時的に使えなくなる可能性が高いので、(再起動で戻るはず。)
参考に書いたサイト(とこのページ)はローカルに保存しておいたほうが良いと思います。

ますWindows7をセーフモードで起動します。
次にタスクマネージャを開いてプロセスタブに表示されているソフト名をメモします。
(プリントスクリーンが便利でしょう。やり方は調べてください)

次に起動しているサービスをメモします。
msconfigでもいいですが、後の為に管理ツールのサービスで確認したほうがいいでしょう。

参考
http://www.adminweb.jp/windows7/service/index1.h …

状態カラムをクリックして、開始しているサービスを上にもってきたらそれをメモ。

二つメモが終わったら通常モードで起動します。

通常モードで起動したら、管理ツールのサービスを開いてさっきメモしたもの以外を停止します。
無効や手動じゃないので間違えないようにお願いします。

参考
http://www.atmarkit.co.jp/fwin2k/win7/14win7tune …中段)
http://oshiete.goo.ne.jp/qa/5581030.html

自動設定のサービスを無効や手動に設定した場合、
再起動しても戻らないのでヤバイサービスを弄ると悲惨なことになりますが、(←ココ重要!!)
停止だけなら再起動で戻るはずなので多分なんとかなります。

サービスの停止が終わったら、タスクマネージャを起動してこちらもメモしたもの以外を全て終了します。

これでセーフモードにかなり近い状態になるので、実験してみてうまくいったら
前回書いた二分探索で絞り込んでいけば良いと思います。

もう一度書いておきますが自己責任でお願いします。
Windowsの再インストールかリスキーなシステム停止かの二択です。

もう何も思いつきません。健闘を祈ります。
    • good
    • 0
この回答へのお礼

今日、このエラーを吐きまくっていたPCをついに初期化しました。
(工場出荷時の状態に戻しました。)

初期化したところついにコンパイルができるようになりました!
苦肉の決断でしたが、ここまでやって頂いて出来なかったのですから仕方ないです。

何はともあれ、これでCの勉強ができます。

今までのやり取りは、今後同様な悩みを抱える方の為の
参考になる有意義なものだったと思っております。

どうも本当にありがとうございました。
また何か質問をさせていただいた時にはぜひともお力をお貸し頂けると嬉しいです。

それでは。

お礼日時:2011/09/29 17:03

No.4です



画像の添付がうまくいかなかったので
アップローダーに上げなおしました。すいません

http://ichigo-up.com/cgi/up/qqq/nm42220.jpg

この回答への補足

お礼をつけて一件落着できればよかったのですが、
どうやらそうはいかないようです…。

結果報告なのですが、
スタートアップの項目については、コマンドのところに「Windows」と記述されて
いないものについては全部OFFにしてみましたが、やはりダメでした。

サービス項目については、Microsoft以外の製造元で、なおかつ実行中のものをOFFに
してみたのですが、これもやはりダメでした。

他にもなにか改善策はありますでしょうか…。
どうかよろしくお願いします。

補足日時:2011/09/27 16:57
    • good
    • 0

セーフモードでコンパイル出来た以上、セーフモードで起動しておらず、


通常モードで起動しているソフトもしくはWindowsのサービスが原因で間違いないでしょう。

ここまで来たら一個一個調べるしかありません。

まず最初にアンチウィルス、ファイアーウォールなどの設定で、
bcc32とilink32の両方を許可してコンパイルできるか確認してください(念のため)

次に可能ならアンチウィルスとファイアーウォールのアンインストール
(無理なら省いてかまいませんがコレで解決しそうな気がします)

これでダメなら本題に移りますが、システムを弄りますのでハッキリいって危険です。
家族共用のPCだったりして責任が取れない場合はオススメできません。

PCが壊れることはありませんが、起動不能でWindowsの再インストールはありうるので
一応自己責任でお願いします。

やり方としてはmsconfigを起動してスタートアップの怪しい項目をオフにする→再起動して実験。
の繰り返しになりますが、手間がかかりますので
二分探索(二分法?)を使ったほうが効率的だと思います。

項目をオフにする前に項目名でネット検索してみればどんなソフトか大体分かりますので
ヤバそうなソフトはオンのままにしておけば起動不能のリスクは減ると思います。

参考になりそうなURL
http://oshiete.goo.ne.jp/qa/6605089.html
http://pc.rin9.net/pc/1026.html
http://japanism.info/windows7-msconfig.html

二分探索は分かりづらいと思いましたので画像で解説してみました。
msconfigの見た目はXPのものなので7とは若干違いますが問題ないと思います。
※添付画像が削除されました。

この回答への補足

たびたびありがとうございます。ここまでして頂いて本当に感謝です。

教えていただいたことを試してみました。
Bcc32.exe、ilink32.exeを許可→ダメでした
セキュリティーソフトを消す、ファイアウォールをOFF→ダメでした

msconfigを用いる方法は明日か明後日あたりに
腰を据えてじっくりやってみようと思います

後日結果報告と共にお礼もつけさせて頂きます。
とりあえず、一旦お礼を申し上げさせていただきます、本当にありがとうございます。

補足日時:2011/09/25 21:56
    • good
    • 0

No.2です



ilink32が直接起動できるならば、bcc32の方の問題になります。

c:\Borland\Bcc55\binを開いてbcc32.exeを適当な名前(たとえばacc32.exe)に変更して、
「acc32 プログラム名.c」で実行してみてください

コンパイルが成功するならbcc32にプロテクトがかかっている可能性が高いです。

Microsoft Security Essentialsはアンチウィルスソフトですが、
ファイアーウォールの方は確認されましたか?

アンチウィルスやファイアーウォールの起動妨害は良くある話なので前回書きましたが、
これ以外にも起動妨害機能を持つソフトは星の数ほどありますし、
ユーザーが気づかないうちにインストールされてる例は非常に良くあるので
とにかくセーフモードで実験してみることをオススメします。

この回答への補足

ご回答ありがとうございます。
教えていただいた通りいろいろやってみましたので結果を書きます。

ファイアウォールでilink32.exeを許可 → 同様のエラー
ファイアウォールを無効 → 同様のエラー
セーフモードでコンパイル → コンパイルできました!!

という結果でした。
セーフモードで実行できたということは、やはり仰られた通り、
何か別のプログラムに実行を阻まれているということでしょうか。

セーフモードではなくてもコンパイルできる事を目指したいのですが、
これに対しての対策は何かありますでしょうか?

お手数をおかけしますが引き続きよろしくお願いいたします。

補足日時:2011/09/25 12:04
    • good
    • 0

「エラー E2133: コマンド 'ilink32.exe' を実行できない」というエラーは


bcc32が出しているものと思われますのでPATHは設定できているはずです。

PATHが設定されているのに起動エラーがでるということは
以下の四つのどれかに該当すると思われます。

1.bcc32がバグっている
2.bcc32によるilink32の起動が妨害されている。
3.ilink32の起動自体が妨害されている。
4.そもそもilink32が存在しない。

まずコマンドプロントから「ilink32」と打って起動できるか確認してください。
起動できればTurbo Incremental Link 5.00~というバージョン表示と
長いオプション説明が出るはずです。

起動できたら1か2、出来ないなら3か4だと思われます。
再インストールして同じ症状なら1と4は考えにくいのでおそらく2か3でしょう。

どちらの場合もファイアーウォールやアンチウィルスなどが悪さをしている可能性が高いので、
該当しそうなソフトを無効化する、セーフモードで起動するなどして
改善するか確認してみてください。

この回答への補足

ご回答ありがとうございます。

ilink32と入力した結果、Turbo Incrementalの表示とコマンド一覧
らしきものが表示されました。

使っている保護ソフトが「Microsoft Security Essentials」なんですが、
これのリアルタイム保護を無効にしてコンパイルしようとしたところ
やはりilink32.exeが起動できないというエラーが出てしまいました。

ちなみに別のパソコン(OS Win7、保護ソフト同様、同じインストーラーでインストール)で
同様のコンパイル環境を整えてみたところ、ちゃんとコンパイルできました。
いったいなにが原因なのでしょうか…

他に何か対策など思いつきましたら是非教えてください。
引き続きよろしくお願いいたします。

補足日時:2011/09/24 18:24
    • good
    • 0

まずC:\borland\bcc55\binのbcc32.cfgとilink32.cfgが以下のようになっているかどうか確認してください。



- bcc32.cfgの内容 -
-I"C:\Borland\BCC55\Include"
-L"C:\Borland\BCC55\Lib"

- ilink32.cfgの内容 -
-L"C:\Borland\BCC55\Lib"

確認、修正したなら、スタート->コンピュータ->右クリック->プロパティ->システムの詳細設定->環境変数で
ユーザもしくはシステムの環境変数, PATHに"C:\Borland\BCC55\Bin"があるか確認してないなら追加(";"がしきり文字です)

以上の操作で正常にコンパイルできるはずです。

この回答への補足

ご回答ありがとうございます。
教えて頂いた通りに確認と修正をしてみたのですが、やはり出来ません。

間違っている個所が分からないので
以下に当方のPATHの内容を記述します。

ユーザーの環境変数
c:\Borland\Bcc55\bin;

システムの環境変数
C:\Program Files\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\Common Files\Microsoft Shared\Windows Live;C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files\Dell\DW WLAN Card;c:\Program Files\WIDCOMM\Bluetooth Software\;c:\Program Files\WIDCOMM\Bluetooth Software\syswow64;c:\borland\bcc55\bin;C:\Program Files (x86)\QuickTime\QTSystem\

Bcc32.cfgの内容
-I"C:\Borland\BCC55\Include"
-L"C:\Borland\BCC55\Lib"

ilink32.cfgの内容
-L"C:\Borland\BCC55\Lib"

記述した後にPC再起動はしました。

ご迷惑をおかけしますが引き続き宜しくお願いします。

補足日時:2011/09/21 07:45
    • good
    • 0

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