第一步:卸载Java虚拟机组件
以卸载Windows XP中已安装的MSJVM虚拟机为例。点击“开始→运行”,在运行对话框中输入“RunDll32 advpackdll,LaunchINFSection javainf,UnInstall”命令,确定后dan出“Microsoft VM uninstall”对话框(见图),点击“是”按钮后,开始卸载Java虚拟机组件,完成后重新启动系统。
第二步:删除Java虚拟机文件和目录
1删除Java目录
Windows XP系统重启后,进入到“c:\windows”系统目录,删除“JAVA”目录。
2删除javapnf文件
然后进入“c:\windows\inf ”目录,删除“javapnf”文件,这里要注意,“inf”目录的属性为隐藏,如果在系统目录下找不到该文件夹,请在资源管理器窗口中点击“工具→文件夹选项”,在dan出的对话框中切换到“查看”标签页,选中“显示所有文件和文件夹”。
3删除jviewexe和wjviewexe文件
进入到“c:\windows\ system32”目录,删除jviewexe和wjviewexe这两个可执行文件。
第三步:修改注册表
打开注册表编辑器,删除“The HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Java VM”分支下的所有子键项目。接着删除“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\AdvancedOptions\JAVA_VM”分支下所有子键项目。
这样就卸载干净了。
代码描述
用java对windows注册表进行编辑是一个比较困难的任务 因为java的平台无关性 但是java提供了Runtime类 它允许把原始的mand命令直接发生送给OS 所以可以通过这个类来实现对注册表简单有效的管理
这里允许的基本功能是添加 删除和查询注册表信息 根据key查询出value和type分别存放在不同的变量中
//主要的方法
add(String location String key String type String value);
delete(String location String key);
query(String location String key);
//查询消息用到的方法
getKey() => 检索的key名
getValue() => 根据key得到的value
getType() => 根据key得到的数据类型 (REG_SZ REG_BINARY 等)
调用方法
例:
public static void main(String[] args) {
try {
RegKeyManager rkm = new RegKeyManager();
// 位系统的注册表目录
// rkm query( HKEY_LOCAL_MACHINE\\SOFARE\\Wow Node\\Tencent\\QQ Install );
// 位系统的注册表目录
rkm query( HKEY_LOCAL_MACHINE\\SOFARE\\Tencent\\QQ Install );
System out println( KEY: + rkm getKey() + DATA TYPE: + rkm getType() + DATA VALUE: + rkm getValue());
// rkm add( HKEY_LOCAL_MACHINE\\SOFARE\\Tencent\\QQ TESTING REG_SZ VALUE DATA );
// rkm delete( HKEY_LOCAL_MACHINE\\SOFARE\\Tencent\\QQ TESTING );
} catch (Exception e) {
e printStackTrace();
}
}
注: 位系统注册表路径是不同的上面的代码实现了在qq的注册表路径下查询出qq的安装路径(对于获取QQ的安装路径前段时间写过一篇类似的文章 如果你感兴趣的话可以参看JAVA通过注册表获取软件的安装路径) 在安装路径下添加一个注册表信息 然后删除添加的信息
package languageexpress java;
import java io ;
public class RegKeyManager {
private final String TYPES[] = { SZ BINARY DWORD QWORD DWORD_LITTLE_ENDIAN QWORD_LITTLE_ENDIAN DWORD_BIG_ENDIAN EXPAND_SZ LINK MULTI_SZ NONE RESOURCE_LIST };
private String type = value = key = ;
protected void query(String loc String k) throws Exception {
Process p = Runtime getRuntime() exec( reg QUERY \ + loc + \ /v \ + k + \ );
BufferedReader in = new BufferedReader( new InputStreamReader( p getInputStream() ) );
String out = ;
while ( ( out = in readLine() ) != null ) {
if (out matches( ( )\\s+REG_( ) )) { break; }
}
in close();
String str[] = out split( );
int b = ;
for (int a= ; a < str length; a++) {
if ( str[a] replace( ) matches( \\S+ ) ) {
switch (b) {
case : key = str[a]; break;
case : type = str[a]; break;
case : value = str[a]; break;
}
b++;
}
}
}
protected String getKey() { return key; }
protected String getType() { return type; }
protected String getValue() { return value; }
protected boolean add(String loc String name String dType String value) throws Exception {
boolean p = false valid = false;
for (int a = ; a < TYPES length; a++) {
if (dType equalsIgnoreCase( REG_ + TYPES[a])) { valid = true; break; }
}
if ( valid ) {
Process p = Runtime getRuntime() exec( reg ADD \ + loc + \ /v \ + name + \ /t \ + dType + \ /d \ + value + \ );
BufferedReader in = new BufferedReader( new InputStreamReader( p getInputStream() ) );
String out = ;
while ( (out = in readLine() ) != null ) {
if (out equalsIgnoreCase( The operation pleted successfully )) { p = true; }
}
in close();
}
return p;
}
protected boolean delete(String loc String key) throws Exception {
boolean p = false;
Process p = Runtime getRuntime() exec( reg DELETE \ + loc + \ /v \ + key + \ /f );
BufferedReader in = new BufferedReader( new InputStreamReader( p getInputStream() ) );
String out = ;
while ( ( out = in readLine() ) != null ) {
if (out equalsIgnoreCase( The operation pleted successfully )) { p = true; }
}
in close();
return p;
}
lishixinzhi/Article/program/Java/hx/201311/26615这种情况我也遇到过的,我是这样
第一步:卸载Java虚拟机组件
以卸载Windows XP中已安装的MSJVM虚拟机为例。点击“开始→运行”,在运行对话框中输入“RunDll32 advpackdll,LaunchINFSection javainf,UnInstall”命令,确定后dan出“Microsoft VM uninstall”对话框(见图),点击“是”按钮后,开始卸载Java虚拟机组件,完成后重新启动系统。
第二步:删除Java虚拟机文件和目录
1删除Java目录
Windows XP系统重启后,进入到“c:\windows”系统目录,删除“JAVA”目录。
2删除javapnf文件
然后进入“c:\windows\inf ”目录,删除“javapnf”文件,这里要注意,“inf”目录的属性为隐藏,如果在系统目录下找不到该文件夹,请在资源管理器窗口中点击“工具→文件夹选项”,在dan出的对话框中切换到“查看”标签页,选中“显示所有文件和文件夹”。
3删除jviewexe和wjviewexe文件
进入到“c:\windows\ system32”目录,删除jviewexe和wjviewexe这两个可执行文件。
第三步:修改注册表
打开注册表编辑器,删除“The HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Java VM”分支下的所有子键项目。接着删除“HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\AdvancedOptions\JAVA_VM”分支下所有子键项目。
完成了以上 *** 作后,就在Windows XP系统中卸载了MSJVM,下面就可以重新安装了
以上方法也适用于Windows2000 *** 作系统。
希望对你有帮助!
对于硬盘上面的顽固性文件,用一般的方法无法删除,可以采用下面的方法处理:
处理方法:
(一)如果这个盘中有重要的资料,可以这样做:
删除不了的软件、文件或文件夹的解决方法:
1、开机按下F8不动,到高级选项出现在松开手,用上下键选安全模式,按照提示进入到安全模式中删除即可(安全模式与正常模式 *** 作一样)。
2、如果使用其他办法无法删除,可选择Unlocker强行删除工具删除,安装后右键点要删除的文件选择Unlocker再选删除就可以将要删除的文件彻底删除(类似的软件有QQ电脑管家、360卫士、金山卫士的“粉碎文件”功能),使用方法如下:(以360为例)
(1)找到你粉碎的文件然后鼠标右键。选择使用强力删除
(2)点击使用强力删除这直接就进入到文件粉碎机。再点击粉碎文件就可以了。
3就是买一张带PE的GHOST版的光盘或者带PE的U盘,设光驱为启动项或者U盘为启动项,开机,进入到光盘中,进入WINPE,在这个PE系统中,打开我的电脑(或计算机)找到顽固性文件,想删除什么就删除什么,这是因为在DOS下面,什么病毒,和磁盘的属性在这都没有限制了,病毒也不会激发。
(二)如果这个盘中没有重要的文件,将这个文件夹所在的盘符格式化,磁盘格式还是选NTFS,快速格式化就可以了。
1点 开始 - 运行 ,在里面输入 gpeditmsc 打开组策略编辑器,依次找到 用户配置 - 管理模板 - 控制面板。右边有一项 “隐藏指定的控制面板程序”,双击 选择启用,并在下面的 “不允许的控制面板程序的列表”后面 的显示中 添加 你不想显示的就可以了。
比如:你不想显示 “添加删除程序”,那么在那个显示中 点添加 输入 添加或删除程序 就可以了。
2win开始菜单->运行->regedit,然后找到,并删掉
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ControlPanel\NameSpace\{429912 4F-F2C3-41b4-9C73-9236B2AD0E8F}
和
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\explorer\ControlPanelWOW64\ NameSpace\{4299124F-F2C3-41b4-9C73-9236B2AD0E8F}
删掉这两个键,就不会在控制面板出现。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)