とっておきの「まかない飯」を教えて下さい!

数日前から起動すると「エラー・Win logon.exeコンポーネントが見つかりません」「sfc os.dllが見つからないためアプリケーションを開始できません」と表示されるようになりました。「OK」すると今のところ差し支えなく使用出来るのですが毎回表示されるので困っています。「再インストールすれば解決される場合があります」とも出るのですがどこを開いてどうすればいいのか、自分なりに調べてみてもわかりませんでした・・・。どなたか解決方法を教えて頂ければ嬉しいです。お手数お掛けしますが宜しくお願い致します。

A 回答 (18件中1~10件)

「sfc.os.dll」ではなく「sfc_os.dll」ですね。



http://www.dlldump.com/download-dll-files_new.ph …

上記サイトでダウンロードして、下記のフォルダにコピーしてください。

C:\WINDOWS\system32
C:\WINDOWS\system32\dllcache

また、C:\WINDOWS\system32フォルダにある「sfc.dll」と「sfc.exe」を下記のフォルダにコピーしてください。
C:\WINDOWS\system32\dllcache
    • good
    • 0
この回答へのお礼

ありがとうございます!!
ご説明の通り行なって再起動したところようやく起動時のエラー表示はされなくなりました!!
再起動後sfc /scannowを実行した所、「Windouws File Profection」の小窓が出て処理されました。
これで修復されたとみなして大丈夫でしょうか??
また、今回行なったコピー作業等はそのままにして現状を保った方がいいですよね。
ちなみにどうしてこのようになったのか未だにわからずにいるのですが考えられる原因がわかりましたら今後の為にも教えて頂けると嬉しく思います。

長い時間をかけてご協力頂けたこと、心より感謝しております!!ありがとうございました!!!(泣)

お礼日時:2006/07/12 00:28

全ファイル&フォルダの表示設定


http://www.higaitaisaku.com/zenhyoji.html

ファイルの拡張子が表示されないとか、一部のファイルが表示されないというのはおかしいので、現在のままにしておいたほうがいいのではないでしょうか。

その他については、私にはわかりません。ご自分の判断で整理してください。

>どうしてこのようになったのか

Windowsが異常終了したとき、電源ボタンの長押しで強制終了させたときなどにファイルが破損することがあります。

システムフォルダにあるファイルは、常時、酷使されているため、破損することが珍しくありません。。

そのため、起動時にシステムファイルチェックが実行され、異常が見つかれば、「DLLCache」フォルダにあるファイルを探して修復するんですが、「DLLCache」フォルダにあるファイルが破損滅失していれば修復できません。

通常、ユーザーが直接このフォルダにあるファイルを操作することはありませんので、「運が悪かった」としか考えられません。
    • good
    • 0
この回答へのお礼

アドバイスありがとうございます。
現状を保って以後同じ事にならないよう配慮したいと思います。
わかりやすく説明して頂きこの度は本当にありがとうございました!!

お礼日時:2006/07/12 11:31

前回の投稿にあるとおりの表示設定にして直接dllcacheを


開き「.exe」「.dll」それぞれの項目で「sfc.exe」「sfc.dll」の存在を目視で確認して下さい。
アルファベット順ですのでおおよその見当はつくと思います。
本来はそれをsystem32にペーストすれば修復完了となるのですが・・・
その際system32上から該当ファイルが完全に欠落しているのであれば、何事もなくペーストされますし、
破損している場合は「上書き」の確認が表示されます。
まずは上記を行って下さい。そののち「sfc /scannow」で機能が
復活したか確認してください。つまりSFCが実行できない限り
修復は不完全と言う事になります。

この回答への補足

ありがとうございます。

>前回の投稿にあるとおりの表示設定にして直接dllcacheを開き「.exe」「.dll」それぞれの項目で「sfc.exe」「sfc.dll」の存在を目視で確認して下さい。

dllcacheを開きました。「.exe」「.dll」がついているものがたくさん表示されましたがその中には「sfc.exe」「sfc.dll」はありませんでした。
(説明の解釈が間違っているでしょうか?)

system32上には間違いなく「sfc.exe」「sfc.dll」が存在していてそこへ上書き表示されることなくコピーして貼り付けることも出来ました。
「sfc /scannow」はやはり出来ません。。
皆さんのご指示でも変化がないのはどこかで私のやり方がおかしいんですよね。。

補足日時:2006/07/10 22:49
    • good
    • 0
この回答へのお礼

お陰さまで解決することが出来ました!
何度も丁寧にご説明下さり本当に感謝しております^^
もう少し勉強しますね(苦笑)
どうもありがとうございました!

お礼日時:2006/07/12 11:40

手作業による修復が一通り完了したのであれば「sfc /scannow」を


実行して下さい。これまでの作業はSFCの機能を復活させるのが
目的です。

この回答への補足

何度もありがとうございます!
sfc /scannowの実行をしてみましたが
「sfc.exe コンポーネントが見つかりません・sfc.os.dllがみつからないためこのアプリケーションを開始できませんでした。」と出ます。。

補足日時:2006/07/10 20:14
    • good
    • 0

>「sfc.*」で再度検索しましたところ今度は「sfc.exe」と「sfc.dll」が見つかりました。



どこに見つかったのかがきわめて重要です。

下記4つのファイルがあれば一件落着!!

C:\WINDOWS\system32\sfc.dll
C:\WINDOWS\system32\sfc.exe
C:\WINDOWS\system32\dllcache\sfc.dll
C:\WINDOWS\system32\dllcache\sfc.exe

ファイルサイズもばっちり!

>expand -r c:\sfc.dl_ C:\WINDOWS\system32
>expand -r c:\sfc.ex_ C:\WINDOWS\system32

この作業はもう必要ありません。

パソコンを再起動してエラーが表示されないことを確認してください。

この回答への補足

お世話になってます!
一件落着の言葉でほっとしたものの再起動後も変わらないんです。。

「sfc.*」の検索結果です。
SFC.DL_ フォルダ名C:\WINDOWS\I386
SFC.EX_ フォルダ名C:\WINDOWS\I386
sfc.dll フォルダ名C:\WINDOWS\system32
sfc.exe フォルダ名C:\WINDOWS\system32
sfc.png フォルダ名C:\Tanken\engine\cmn
sfc.dll フォルダ名C:\WINDOWS\ServicePackFiles\i386


と出ています。
一件落着とされるファイル名ではないのですが。。。
どうしてなんだろう。。
アドバイス頂きながら解決する事が出来なくてすみません。

補足日時:2006/07/10 19:50
    • good
    • 0

>expand -r c:\sfc.dl_ C:\WINDOWS\system32


>expand -r c:\sfc.ex_ C:\WINDOWS\system32
>を「ファイル名を指定して実行」をするのでしょうか・・
>もしくはexpand -r c:\sfc.dl_ C:\WINDOWS\system32
 expand -r c:\sfc.ex_ C:\WINDOWS\system32をこの画面に入れる事で実行とされるのでしょうか

ファイル名を指定して実行→「cmd」
これでもコマンドプロンプトは開きますが。
開いたら>(プロンプト)以降に上記コマンドラインを入力してenterです。

この回答への補足

お世話になってます!
わかりやすいご説明頂きありがとうございます!
早速行なってみましたがどちらのコマンドを入力しても「入力ファイルを開くことができません」と出てしまいました。。。

補足日時:2006/07/10 15:36
    • good
    • 0
この回答へのお礼

お陰さまで解決しました!
何度もわかりやすくご説明して下さり本当に感謝しております!
良い勉強になりました。
トラブル対処できるようにもっと勉強しますね。
ありがとうございました!!

お礼日時:2006/07/12 11:45

>「sfc.*」で検索した所、sistem32のフォルダから「sfc.dll」と「sfc」が検出されました。



「sfc.exe」であればわかるんですが「sfc」というのがわかりません。

下記参照してファイルの拡張子が表示されるようにしてみてください。

全ファイル&フォルダの表示設定
http://www.higaitaisaku.com/zenhyoji.html

>「C:\WINDOWS\system32」で検索した所、「SYSTEM32」2個と「system32」が検出されました。

正常ではありません。

システムフォルダにあるファイルやフォルダをいじるのは非常に危険です。

>「sfc.dll」と「sfc」をsystem32のフォルダへコピーしました(この手順は合ってるでしょうか??)

「sfc.exe」であればわかるんですが「sfc」というのがわかりません。

>それから「ファイル名を指定して実行」で指定された二つのコマンドをどちらも試してみたのですが一瞬だけバックが黒い画面が出るのですが先に進めません。。。

コマンドプロンプトを開いて、同じ動作を実行してみてください。

「sfc.dl_」 や 「sfc.ex_」 が見つかったのであれば有効ですが、見つからなければエラーが表示されるだけです。

☆ファイルサイズの確認

エキスプローラでファイルを選択して右クリック、メニューのプロパティを選択してファイルサイズが正常かどうか確認してください。

「sfc.dll」

 サイズ:5.00 KB (5,120 バイト)
 ディスク上のサイズ:8.00 KB (8,192 バイト)

「sfc.exe」
 サイズ:12.0 KB (12,288 バイト)
 ディスク上のサイズ:12.0 KB (12,288 バイト)

この回答への補足

度々ありがとうございます!
全ファイル&フォルダの表示設定を行ないました。
「sfc.*」で再度検索しましたところ今度は「sfc.exe」と「sfc.dll」が見つかりました。

「sfc.exe」と「sfc.dll」を改めて「system32」のフォルダへコピーしました。
(このフォルダに「sfc.exe」「sfc.dll」がありましたがコピー先は同じフォルダでいいのかな??)

>コマンドプロンプトを開いて、同じ動作を実行してみてください。

コマンドブロンプト画面を見つけました(今までに使った事がないです)
ここに「sfc.exe」や「sfc.dll」をコピーするのでしょうか??
その後に
expand -r c:\sfc.dl_ C:\WINDOWS\system32
expand -r c:\sfc.ex_ C:\WINDOWS\system32
を「ファイル名を指定して実行」をするのでしょうか・・
もしくはexpand -r c:\sfc.dl_ C:\WINDOWS\system32
 expand -r c:\sfc.ex_ C:\WINDOWS\system32をこの画面に入れる事で実行とされるのでしょうか。

コマンドブロンプトを開いた状態で作業を進めずにいます。
疑問だらけですみません・・・;;

>☆ファイルサイズの確認

エキスプローラでファイルを選択して右クリック、メニューのプロパティを選択してファイルサイズが正常かどうか確認してください。

「sfc.dll」

 サイズ:5.00 KB (5,120 バイト)
 ディスク上のサイズ:8.00 KB (8,192 バイト)

「sfc.exe」
 サイズ:12.0 KB (12,288 バイト)
 ディスク上のサイズ:12.0 KB (12,288 バイト)

サイズの確認ではその通りでした。

ご面倒かと思いますが再度教えて頂けると幸いです。

補足日時:2006/07/10 13:48
    • good
    • 0

都合でPCの前を離れなければなりませんので現時点でできる


アドバイスをしておきます。
「Win logon.exe」「sfc os.dll」このどちらも検索するまでもなく
C:\WINDOWS\system32\dllcacheの中に存在します。
SFCを実行した際、修復の元となるデータです。これをsystem32に
ペーストする事です。

なおWindows以下のフォルダを開く際はフォルダのメニュー、
表示>アイコンの整列で「種類」・「グループで表示」にチェックを入れて下さい。見つけやすくなります。

この回答への補足

根気良く気に掛けて下さりありがとうございます。
未だにアドバイスを上手く活用しきれず解決できていません。。
ど、どうしよう。

珍しく脳を使っているので頭の中混乱してますー(苦笑)
・・・本当に申し訳ないです;;

補足日時:2006/07/08 20:16
    • good
    • 0

Windowsは起動時にシステムファイルに異常がないかをチェックして、異常があった場合、バックアップファイルを使って修復しようとします。



また、「Winlogon.exe」はWindows起動時に最初に実行されるプログラムです。

Windowsが起動され「Winlogon.exe」が実行されると「Winlogon.exe」は「SFC.DLL」を呼び出してシステムファイルチェック(System File Check)を実行しようとしますが、「SFC.DLL」が見つからないとエラーが表示され、システムファイルチェックが実行されません。

Windowsの実行自体には支障はありませんが、システムファイルチェックが実行されないのが原因で、修復機能が働かなくなり、他のファイルにも破損が広がるとOSが正常に起動されないようになってきます。

システムファイルチェックには通常下記のファイルが使用されます。

C:\WINDOWS\system32\sfc.dll
C:\WINDOWS\system32\sfc.exe

キャッシュファイルが下記の場所に保存されます。

C:\WINDOWS\system32\dllcache\sfc.dll
C:\WINDOWS\system32\dllcache\sfc.exe

正常な場合、エキスプローラで「sfc.*」で「C:\WINDOWS\system32」フォルダを検索すると上の4件が検出されます。

NECの場合、OSのインストールディスクがないでしょうから、リカバリディスク等で「sfc.*」を検索して見てください。

見つからない場合はメーカーに問い合わせてください。

「sfc.dl_」 や 「sfc.ex_」 が見つかった場合はそれらのファイルを「C:\」へコピーしておいて、「スタート」「ファイル名を指定して実行」で下記コマンドを実行してください。

expand -r c:\sfc.dl_ C:\WINDOWS\system32
expand -r c:\sfc.ex_ C:\WINDOWS\system32

この回答への補足

わかりやすいご説明ありがとうございます!

>正常な場合、エキスプローラで「sfc.*」で「C:\WINDOWS\system32」フォルダを検索すると上の4件が検出されます。

「sfc.*」で検索した所、sistem32のフォルダから「sfc.dll」と「sfc」が検出されました。
「C:\WINDOWS\system32」で検索した所、「SYSTEM32」2個と「system32」が検出されました。

これは正常って事??

>「sfc.dl_」 や 「sfc.ex_」 が見つかった場合はそれらのファイルを「C:\」へコピーしておいて、「スタート」「ファイル名を指定して実行」で下記コマンドを実行してください。

「sfc.dll」と「sfc」をsystem32のフォルダへコピーしました(この手順は合ってるでしょうか??)
それから「ファイル名を指定して実行」で指定された二つのコマンドをどちらも試してみたのですが一瞬だけバックが黒い画面が出るのですが先に進めません。。。

検討がつくようでしたら再度アドバイス頂けると幸いです。すみません。。

補足日時:2006/07/08 18:54
    • good
    • 0

>winlogon.exeのファイルが2個見つかりました。


>フォルダ名 1・C\WINDOWS\system32
>2・C\WINDOWS\ServicePackFiles
>1じゃない方をコピーすれば良いと言う事ですよね?

そうですね、「1のファイルを参照したが消失したか破損している」アラートですので。
パスはc:\windows\system32へコピーで結構です。
[winnt]はNT系の2000まででした。

2と同じフォルダで[sfcfiles.dll]が見つかったらこれもついでに[system32]へコピーしてみてください。

ファイルプロテクションでコピー出来ない場合、他の方法がありますので、補足を。

この回答への補足

コピーは出来て再起動するも変わらずでした・・・。
なぜなんでしょぅ?;;?
ホント何回も申し訳ありません。。

補足日時:2006/07/08 20:10
    • good
    • 0

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


おすすめ情報