WebBrowser 中不显示 java小程序 Applet
来源:互联网 发布:数控机床的编程特点 编辑:程序博客网 时间:2024/06/04 19:29
网页中有一个 java小程序 (Applet)
用ie 或者 世界之窗 可以正常使用 这个页面 内容完整
使用 WebBrowser 打开以后就 WebBrowser java小程序的位置就会显示为 一个灰色的 矩形【本来是有内容的】
打开页面过程中 会提示错误 *****为空或不是对象
解决方法 增加环境变量JAVA_PLUGIN_WEBCONTROL_ENABLE = TRUE
说明:可以调用API实现
Environment.SetEnvironmentVariable(StrName, strValue, EnvironmentVariableTarget.Machine);
错误提示依然存在 但是能用了
网上也有说JAVA_PLUGIN_WEBCONTROL_ENABLE=1即可解决!
转自:http://blog.163.com/xiaobingking@126/blog/static/322371372011016134892/
C# 实现环境变量(采用 Environment 类)
private void setEnvi(String StrName, String strValue) { Environment.SetEnvironmentVariable(StrName, strValue, EnvironmentVariableTarget.Machine); } private void setPathWithVariable(String strVariable) { String strHome = "%" + strVariable + "%"; setPathAfter(strHome); } private void setPathAfter(String strHome)//此时不会刷新path,需重启后刷新 { String pathList = Environment.GetEnvironmentVariable("PATH"); //检测是否以;结尾 if (pathList.Substring(pathList.Length - 1, 1) != ";") { Environment.SetEnvironmentVariable("PATH", pathList + ";"); pathList += ";"; } string[] list = pathList.Split(';'); bool isPathExist = false; foreach (string item in list) { if (item == strHome) isPathExist = true; } if (!isPathExist) { Environment.SetEnvironmentVariable("PATH", pathList + strHome + ";", EnvironmentVariableTarget.Machine); } }
============ 更改注册表===========================
注意,采用此方式修改的环境变量其实是修改了注册表里的变量值,修改之后,系统环境变量并没有更新,因此需要重启计算机,不推荐使用
http://www.cnblogs.com/ITBread/archive/2012/04/15/2450367.html
class SysEnvironment { /// <summary> /// /// 获取系统环境变量 /// /// </summary> /// /// <param name="name"></param> /// /// <returns></returns> /// public static string GetSysEnvironmentByName(string name) { string result = string.Empty; try { result = OpenSysEnvironment().GetValue(name).ToString(); //读取 } catch (Exception) { return string.Empty; } return result; } /// <summary> /// 打开系统环境变量注册表 /// </summary> /// <returns>RegistryKey</returns> private static RegistryKey OpenSysEnvironment() { RegistryKey regLocalMachine = Registry.LocalMachine; RegistryKey regSYSTEM = regLocalMachine.OpenSubKey("SYSTEM", true); //打开HKEY_LOCAL_MACHINE下的SYSTEM RegistryKey regControlSet001 = regSYSTEM.OpenSubKey("ControlSet001", true); //打开ControlSet001 RegistryKey regControl = regControlSet001.OpenSubKey("Control", true); //打开Control RegistryKey regManager = regControl.OpenSubKey("Session Manager", true); //打开Control RegistryKey regEnvironment = regManager.OpenSubKey("Environment", true); return regEnvironment; } /// <summary> /// /// 设置系统环境变量 /// /// </summary> /// / <param name="name">变量名</param> /// <param name="strValue">值</param> public static void SetSysEnvironment(string name, string strValue) { OpenSysEnvironment().SetValue(name, strValue); } /// <summary> /// /// 检测系统环境变量是否存在 /// /// </summary> /// <param name="name"> /// </param> /// /// <returns></returns> public bool CheckSysEnvironmentExist(string name) { if (!string.IsNullOrEmpty(GetSysEnvironmentByName(name))) return true; else return false; } /// <summary> /// 添加到PATH环境变量(会检测路径是否存在,存在就不重复) /// /// </summary> /// <param name="strPath"></param> public static void SetPathAfter(string strHome) { string pathlist ; pathlist = GetSysEnvironmentByName("PATH"); //检测是否以;结尾 if (pathlist.Substring(pathlist.Length - 1, 1) != ";") { SetSysEnvironment("PATH", pathlist + ";"); pathlist = GetSysEnvironmentByName("PATH"); } string[] list = pathlist.Split(';'); bool isPathExist = false; foreach (string item in list) { if (item == strHome) isPathExist = true; } if (!isPathExist) { SetSysEnvironment("PATH", pathlist +strHome+ ";"); } } public static void SetPathBefore(string strHome) { string pathlist; pathlist = GetSysEnvironmentByName("PATH"); string[] list = pathlist.Split(';'); bool isPathExist = false; foreach (string item in list) { if (item == strHome) isPathExist = true; } if (!isPathExist) { SetSysEnvironment("PATH", strHome + ";" + pathlist); } } public static void SetPath(string strHome) { string pathlist; pathlist = GetSysEnvironmentByName("PATH"); string[] list = pathlist.Split(';'); bool isPathExist = false; foreach (string item in list) { if (item == strHome) isPathExist = true; } if (!isPathExist) { SetSysEnvironment("PATH", pathlist + strHome + ";" ); } }
Kernel32.DLL内有SetEnvironmentVariable函数用于设置系统环境变量C#调用要用DllImport,代码封装如下:class SetSysEnvironmentVariable { [DllImport("Kernel32.DLL ", SetLastError = true)] public static extern bool SetEnvironmentVariable(string lpName, string lpValue); public static void SetPath(string pathValue) { string pathlist; pathlist = SysEnvironment.GetSysEnvironmentByName("PATH"); string[] list = pathlist.Split(';'); bool isPathExist = false; foreach (string item in list) { if (item == pathValue) isPathExist = true; } if (!isPathExist) { SetEnvironmentVariable("PATH", pathlist + pathValue+";"); } } }
转自:http://blog.csdn.net/chenscmail/article/details/8767712
- WebBrowser 中不显示 java小程序 Applet
- Applet小程序嵌入浏览器中显示
- java中applet小程序的数字签名
- java Applet小程序
- Java---Applet小程序
- 【java】Applet小程序
- Java小程序-Java Applet
- Java applet(小程序)介绍
- java applet 赛马小程序
- Java applet(小程序)介绍
- 12. Applet小程序 java
- 了解Java Applet小程序
- java applet 叠加小程序
- JSP页面中运行Applet小程序
- 第一个java applet小程序
- java学习 Applet 应用小程序_131211
- 简单的Java Applet小程序
- firefox 加载 java applet小程序配置
- sybase数据库下载
- uva 529 Addition Chains
- SharePoint 2010 安装简介及相关补丁下载
- 文本动画制作与播放
- oracle触发器
- WebBrowser 中不显示 java小程序 Applet
- 使用CustomDraw来自绘CListCtrl控件
- 关键字volatile有什么含意?并给出三个不同的例子
- 有的没的
- 二叉排序树
- 此文胜过听三年的培训课
- 用jetty插件运行maven项目 在eclipse中如何debug 调试程序
- 14--5--3统计每个数字字符出现的次数
- 最小生成树prime算法(和Dijkstra算法很类似,除了下面有个地方不同)