ディスクデフラグを起動しようとしたところ、「クラスが登録されていません」とエラー表示のようなものが出ました。
ネットで色々と調べてmmc.exeを起動しようとしたときにも同じように「クラスが登録されていません」とのエラーが出ました。

それが原因なのかわかりませんが、このところパソコンの動きが遅く、フリーズなども多いため困っています。
解決方法はありますか?

A 回答 (1件)

    • good
    • 3
この回答へのお礼

試してみましたが、直りませんでした。

お礼日時:2009/05/18 19:49

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

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

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

Q自クラスをnewしたインスタンスの参照

また、よろしくおねがいします。
あるインスンタンス(A)から別のクラスをnewしてインスタンス(B)を作成し

class A{
public A(){}
B b = new B();
public hoge(){
System.out.plintln("hoge");
}
}

class B{
public B(){}
A.hoge(); <<= ここから自クラスをnewしたAのhoge()を起動させたい
}

こんな風にnewされたB側からAのメソッドを動かしたいなんて場合は、どのようにするんでしょうか?

Aベストアンサー

もう一つ別の方法として、class Bをclass Aの内部クラスにしてしまうという方法があります。

class A {
class B {
public B() {}
void x() {
A.this.hoge(); // 内部クラスBのインスタンスからAのインスタンスメソッドを呼ぶ書き方
}
}
Aの実装以下略
}

Q◎デフラグをしようとしたところ、空きが13%しかなく「15%以上ないと

◎デフラグをしようとしたところ、空きが13%しかなく「15%以上ないと出来ません。」と表示されて
しまいました。「ハードディスクの不要なファイルを削除してから実行するように」、と表示されましたが
不要なファイルがどれだか分りません?? どうか不要なファイルの見つけ方をお教えいただきたく
思います。 初心者なので、どうぞよろしくお願いいたします。

Aベストアンサー

別に空きが13%でもデフラグできますが、効率が悪いだけ。
デフラグしなくても、別に構わないですし。
そのためにRoxio他をアンインストールするのもねぇ~、考え物です。
マイドキュメントの移動や、他にできることからやりましょう。
http://search.vaio.sony.co.jp/google/solution/S0307240014297/

ついでにCD/DVD-R等の書き込みや外付けHDD等にバックアップする練習
もしましょう。Windowsが起動しなくなってデータが・・・って人が
結構いるし、ここでも質問も多いから。

Q基本クラスポインタ = new 派生クラス[i];

基本クラスのポインタ変数pbaseを宣言し、new演算子にて派生クラスの配列を動的に確保して、pbaseに代入した場合、delete[] pbaseは上手く動作するのでしょうか。
(Aのデストラクタは仮想関数にしてあるとしておきます)

------ex-start------
class A {};
class b:public A{};

main()
{
  A * pbase
  pbase = new B[5];
  delete[] pbase
}
------ex-end------

例えば、
class Aは12バイト
class Bは20バイト
である場合、配列のサイズが違うのに、delete[]でちゃんと開放されるのでしょうか。
それともnew/deleteは確保したサイズをシンボル毎に記憶しているのでしょうか。
どうもこの辺が曖昧で実装する時にあやふやになってしまいます。どなたかお知恵をお貸しくださいませ。

Aベストアンサー

struct A { int x; virtual ~A() { cout << "~A: " << this << endl; } };
struct B: A { int y; ~B() { cout << "~B: " << this << endl; } };
B *b = new B[5];
A *a = b;
A *a2= a + 2;
a2->x = 1;
delete[] a;
これを素朴に考えると a2 は単純に a に 2 * sizeof(A) バイト足した場所(b[1] と b[2] の中間ぐらい?)を指すかもしれないです。a2->x = 1 は危険な感じがします。
delete [] が、配列の各要素のデストラクタに渡す this を求めるときに同様の失敗をするかもしれないです。

…と今日まで思っていましたが、実際やってみると delete[] で new B[5] が削除できてしまいました(VC++6.0)。不思議です。

Qアプリケーション起動させようとしたところ、起動しなかった為、パソコン再

アプリケーション起動させようとしたところ、起動しなかった為、パソコン再起動させたところ、「Windowsが正しく起動出来ませんでした」
と表示され、起動出来なくなってしまいました。セーフモードのみ起動出来た為、システムの復元で正常に動作する復元ポイントまで順番にさかのぼってるのですが、改善されません。
XPを使用してて、OSの入れ直しとなるとWindows7にしなければならないので、出来るだけさけたいのですが、他に方法ありませんでしょうか?
それとも、OS入れ直すしかないのでしょうか?

Aベストアンサー

ハード障害かウィルスかはわかりませんが、
ウィルスである場合は復元ポイント内にも複製されていることがあります。
ウィルス対策ソフトによっては「System Volume Information」フォルダ内はサーチ対象外なので
明示的にそこをチェックしてから復元するのがベターです。
といっても今更遅いかもしれませんが・・・。

OS入れなおしでWindows7になるということは、XPダウングレード権付きのものなのだと思いますが
こういった問題はプロが調査しても1週間以上かかって解決しないとか良くあります。
もちろんすぐ復旧できる場合もありますが、有料で調査してもらって解決できない可能性を考えれば
Windows7インストール⇒XPダウングレードくらいの手間は許容範囲と考えるしかないと思います。

Qクラスの参照(同じファイル内 vs 別々のファイルの場合)

二つの.javaファイルがあります。
<ABC.java>
class ABC {
public static void main(String args[]) {
A obj = new A();
obj.hello();
}
}
---------------------------------------------

<A.java>
class A{
void hello() {
System.out.println("Hello from A");
}
}
---------------------------------------------
ABC.javaファイルでコンパイルすると、「 シンボルを解釈処理できません。」というエラーメッセージが出ます。でも、ABC.javaファイルの中に、class Aを続けて書くとコンパイルできます。なぜ、別々のファイルにすると参照できないのでしょうか?
(おなじフォルダ内に入れています)
教えてください。よろしくお願いします。

二つの.javaファイルがあります。
<ABC.java>
class ABC {
public static void main(String args[]) {
A obj = new A();
obj.hello();
}
}
---------------------------------------------

<A.java>
class A{
void hello() {
System.out.println("Hello from A");
}
}
---------------------------------------------
ABC.javaファイルでコンパイルすると、「 シンボルを解釈処理できません。」というエラーメッセージが出ます。でも、ABC.javaファイルの中に、class A...続きを読む

Aベストアンサー

おはようございます。

質問内容と、他の方の解答の補足の書き込みをみて
思ったのですが、ソースファイルとクラスファイル
を勘違いしてませんでしょうか?もしかしたら、
必要以上に解答内容が大きくなってしまって混乱
してるのかな?

実際解答としては「No#1」の方の内容で十分です。

簡単に説明しますと…
2つのクラスを同一Javaファイルに書いてコンパイル
すると、両方のクラスのクラスファイルが生成されます。
しかし2つのクラスを別々のファイルに書くと,当たり前
ですが、それぞれのクラスファイルしか生成されません。

質問内容のテストプログラムでは、Aクラスを記述している
ファイルをコンパイルしないで、ABCファイルをコンパイル
したのではないですか?それなら、Aクラスが存在していな
いのですから、コンパイラもわからないので「シンボルを
解釈処理できない」というエラーを出してしまいます。

ちょっと長くなってしまいましたね^^;

Q至急お願いします!デフラグ中にmmc.exeが強制終了。どうすれば?

アクセサリ→システムツール→ディスクデフラグの最適化を、外付けハードディスクで行っていました。
30%ぐらい終わった段階で、突然「mmc.exeは○○(?)のため終了します。マイクロソフトに送信する・しない」という感じの窓が出て、タスクバーのなかからデフラグが消えてしまいました。
そのため、デフラグの進行状況を表す画面を表示することもできません。
しかし、デフラグは続いているようで、ハードディスクのアクセスランプは光ったまま今現在もカリカリ鳴り続けていす。

デフラグを強制終了すると最悪壊れてしまうかと思うのですが、上記の状態からどのように対処するべきでしょうか?
宜しくお願い致します。

Aベストアンサー

Ctrl + Alt + Delete キーを押してタスクマネージャーを起動してデフラグを終了させる。

Qnew クラス名(Activity名.this);

Android

・下記のようなコードがあるのですが、このとき「.this」の意味を教えてください
・Activityクラス自身?
・「.」で繋いでいる意味も、「this」の意味も良く分かりません
・thisだけでは駄目?
・引数は1つ?

public class Hoge extends Activity {

 public class C1 {//インナークラス?

  protected m1method(略) {
  略 = new クラス名(Hoge.this);

Aベストアンサー

このソースはHogeクラスの中に新しくC1クラスを定義しているのでC1はHogeクラスの
インナークラスで間違いなく Hode.C1 と「.」でつないで表記します。

このときのHoge.thisとは、Hoge.C1クラスのオブジェクト自身のことです。例えば、
tmp = new Hoge.C1(); とした場合は tmp に該当します。

また、最後の行は、自分自身をパラメータとして「クラス名」のオブジェクトを生成
していますので、引数の数はそのクラスによります。

試してないので不確かですが、thisだけだとHogeクラスのオブジェクトと間違う
可能性がありますので、Hoge.thisのほうが確実です。

QWindowsXPのデフラグツールでCドライブをデフラグ時にエラーがー・・・

WindowsXP ProfessionalのデフラグツールでCドライブをデフラグしようと思ったところ、次のメッセージが表示され、デフラグできませんでした。

ボリュームシステムドライブCでchkdskを実行するようにスケジュールされていることを検出しました。"chkdsk /f"を実行してください。

なので、とりあえずコマンドプロンプトで"chkdsk /f"を実行したのですが、今度は

現在のドライブはロックできません。
ボリュームが別のプロセスで使用されているため、CHKDSKを実行できません。
次回のシステム再起動時に、このボリュームのチェックをスケジュールしますか?(Y/N)

よく意味が分からなかったのですが、とりあえずYにし、再起動して、デフラグをしてみたのですが、やはりさっきと同じエラーメッセージが表示されてしまい、デフラグできませんでした。

どうしたらデフラグできるようになるでしょうか・・・
分かる方がいらっしゃいましたら、是非回答をお願いいたしますm(_ _)m

Aベストアンサー

システム再起動時のchkdskは正常に行えましたか?最後までちゃんと行うようにしてください。行われたような覚えがない場合、または途中でキャンセルしてしまった場合は、またコマンドプロンプトからchkdsk /fと入力し、再起動をして、ちゃんと最後までchkdskをするようにしてください。

それでも、デフラグができない場合は、システムがデータを処理している、または使用している関係でできない場合が考えられます。その場合は、safeモードで起動すれば、たいていは回避されますので、正常にchkdskが行えるとおもいます。なお、safeモードでは画面の色の設定、解像度の設定等が通常モードとは違いますが仕様ですので安心してください。
●Microsoftサポート safeモードで起動するには?
http://support.microsoft.com/default.aspx?scid=kb;ja;880414

Q動的に変数をセット後他クラスから参照する場合

コンストラクタで変数にセットした後
他のクラスでインスタンスを生成することなく
セットした変数を参照したいのですが、
staticにすると、他クラスで変数を変更することも
できてしまいます。他の方法がありますでしょうか?
変数はprivateにして、getterで取得するという方法も
考えられますが、static finalな変数として扱う方法が
あるか、お分かりの方いらっしゃいましたら教えてください。

Javaを初めて1ヶ月なので、見当違いの質問でしたらご指摘ください。

例)
Class A{
 static final String aaa;
A(String paraStr){
aaa = paraStr;
}
}

Class B{
static void main(String[] args){
new A("test");
}
}

Class C{
void chStr(){
System.out.println(A.aaa);
A.aaa = "changeStr"
System.out.println(A.aaa);
}
}

期待する値
test
test

もしくは、実行時にfinalの値は変更できない等のException

宜しくお願いします。

コンストラクタで変数にセットした後
他のクラスでインスタンスを生成することなく
セットした変数を参照したいのですが、
staticにすると、他クラスで変数を変更することも
できてしまいます。他の方法がありますでしょうか?
変数はprivateにして、getterで取得するという方法も
考えられますが、static finalな変数として扱う方法が
あるか、お分かりの方いらっしゃいましたら教えてください。

Javaを初めて1ヶ月なので、見当違いの質問でしたらご指摘ください。

例)
Class A{
 static final...続きを読む

Aベストアンサー

static finalな変数
は、コンストラクタを使わなくても使用できなければいけませんから
質問文のようにそのクラスのコンストラクタからであっても、既に変更はできません。

Qexplorer.exeとdrwtsn.exeのエラー

explorer.exeとdrwtsn.exeのエラー

タイトルの通り、起動時にexplorer.exeとdrwtsn.exeがエラーを起こし、マウスカーソル以外がフリーズし、なにも出来なくなります
一度目になった時には前回正常時の設定で起動で上手く起動できたのですが、二度目以降はエラーが毎回出てフリーズ→強制終了するしかなくなります
なにが問題なのでしょうか
ウイルススパイウェアチェックは定期的にしており、一度目のエラーが起きたあと、正常に起動できたときに試しましたが何も検出されませんでした
アンチウイルススパイウェアソフトはavira、spybot
OSはXPのSP3だったと思います

現在セーフモードで起動していてどう対処してよいかわからずに、携帯から質問を投稿しています
ウイルススパイウェアチェックを行いましたが、問題ないようです
色々試してみたいのですが、フリーズして強制終了の流れを何度も繰り返したくないので手をこまねいています
どなたかご教示願います

Aベストアンサー

どの様なエラーが出ているのか分りませんが、
rundll32.exの修復をしてみたら如何ですか。

Windows CDがある場合、
http://support.microsoft.com/kb/812340/ja

ない場合は機種が異なるかもしれませんが参考までに、
http://search.vaio.sony.co.jp/qa/S0309110014660/index.html

rundll32.exはいろいろ情報がありますので、
検索してみると良いですよ。


人気Q&Aランキング

おすすめ情報