レジストリの削除方法

ちょっと仕事で使うアプリケーションの再インストールで,レジストリを削除する作業があるのですが,プログラムを書いてみました.
といってレジストリを削除するだけなんですけどね…
環境はMicrosoftのVisualC++6.0で,Windows2000でのみ動作します.
9X系は削除する関数が,根本的に違います.

#include 
#include 
#include 

色々…
	if(::SHDeleteKey(HKEY_CLASSES_ROOT,"削除したいレジストリ ¥キーは\\と2個入力する") != ERROR_SUCCESS ){
		//エラー発生
                dwErr = GetLastError();
		FormatMessage( FORMAT_MESSAGE_IGNORE_INSERTS|FORMAT_MESSAGE_FROM_SYSTEM, NULL, dwErr, MAKELANGID(LANG_NEUTRAL,SUBLANG_DEFAULT), szMsgBuff, 256, NULL );
		printf("%s",szMsgBuff);//エラーメッセージの表示
	}

こんな感じです.最初Webで調べてRegDeleteKeyという関数を使っていたのですが,これは9X系でしか使えないという罠でした.

2005-04-14 - ni4n0Syouの自己満足日記に追加情報を書きました.