2024年3月3日发(作者:)

WINDOS XP iis 配置 (不好意思本人的 但是 这是网上最好的解决办法!...

http 500 错误,XP系统IIS不能用,导致IIS不能用的问题总结

http 500错误,导致IIS不能用,困扰了很多和我之前一样的朋友。但为什么IIS没办法用?不是我们今天研究的问题。今天和大家分享下,我解决IIS http500错误的过程,希望可以帮助其他IIS不能用的朋友。

我自己用的是惠普(HP)笔记本电脑HP dv2408tx原装系统(vista),家里还有一台组装机。就是为了使用更方便,卸载了vista,重装XP系统。可是系统装好后,IIS浏览html静态页面正常,asp打开时显示"HTTP 500 错误" 。也就是,IIS不能用。为了IIS没办法用的问题,先后为笔记本装了4遍系统。番茄花园XP系统,IIS不能用,雨林木风XP系统,IIS不能用。听网友的用,迅雷下载厂商OEM版的XP系统,IIS还是不能用。和台式机一起装的XP系统,再一样装IIS,还是不能用!所以又从怀疑是使用的XP系统不好,开始怀疑HP惠普笔记本电脑IIS不能用。因为也有同事用的是惠普笔记本电脑,也是IIS没办法用。也打过HP惠普的800,来咨询这个问题。没解决。

也百度知道问过,为什么IIS不能用,是不是HP惠普笔记本IIS不能用。也没有解决。(PS:严重鄙视下,现在很多挣百度分的朋友,垃圾答案复制过来,复制过去的。)关于http500错误。百度大部分答案都是说,IIS的什么密码不统一,密码不同步。同步密码非常麻烦。最后终于在一个角落里发现了篇文章,解决了问题。转发过来,希望可以帮助更多的有http

500错误,IIS不能用的朋友。

http 500错误解决办法:

开始 → 运行 → CMD

输入 cd %windir%system32inetsrv回车

输入 rundll32 , CreateIISPackage回车

输入 regsvr32 回车出现成功即可

注意:1、完全输入,不要省略空格及符号,注意全角、半角,大小写敏感,所以大家注意。2、输入完CreateIISPackage后,可能没有反映,没关系,输入完成。3、正常的计算机输入完成后,都会有提示,如果没有 可能输入有错误,请再试下。

也许相对于同步什么密码的,看起来很简单 但的确是他们解决了 HTTP 500 错误。无法浏览asp文件的问题。

问题:如何分析http 500错误?找出HTTP 500 错误的原因?

点击“工具→internet选项”进入“internet选项”设置; 点击“高级”选项卡; 把“显示友好

HTTP 错误信息”和“显示友好的 URL”前的“√”去掉;再打开ASP文件时出现的是真正的错误信息:我的HTTP 500 错误信息:Server Application Error

The server has encountered an error while loading an application during the processing of your

request. Please refer to the event log for more detail information. Please contact the server

administrator for assistance

出现这样的情况是主要是由于IWAM账号(在我的计算机即是IWAM_MYSERVER账号)的密码错误造成了HTTP 500部错误。

先启动MSDTC服务,什么是MSDTC服务?显示名称:Distributed Transaction Coordinator;描述:协调跨多个数据库、消息队列、文件系统等资源管理器的事务。如果停止此服务,则不会发生这些事务。如果禁用此服务,显式依赖此服务的其他服务将无法启动。

开始菜单,运行:CMD下net start msdtc

结果显示“distributed transaction coordinator 服务不能启动”。

解决方法:

把 C:WINDOWSsystem32dtclog 这个目录重命名(如果有的话,没有就直接省去这一步),然后重新建立该目录。

运行里面:在命令行下: msdtc -resetlog

再net start msdtc,显示服务启动成功了。

然后右键我的电脑--管理--本地用户和组,给IUSR_机器名和IWAM_机器名两个用户设置密码,要一样。

接着开始--运行--打cmd,

然后cd C:InetpubAdminScripts,

然后 set w3svc/wamuserpass 你设置的密码,

然后 set w3svc/anonymoususerpass 你设置的密码。

看一下,行了没有?如果还不行,那么

-v,

然后iisreset。

到一步还是不行,最后在CMD下执行以下命令:

cd %windir%system32inetsrv

rundll32 , CreateIISPackage

regsvr32

关闭所有的IE窗口后重新打开再执行,OK了!!

问题1:什么是http500错误?导致http500错误的原因,和http500错误的解决办法。

http 500 服务器部错误。 是一个笼统的表达。 解决办法往往有很多,参照上面一个问题,找到真正的原因,再分析解决办法。

问题4:是不是HP惠普笔记本电脑IIS不能用?为什么HP惠普笔记本电脑IIS不能用?

这一点 刚刚已经说过了,不是HP惠普笔记本电脑IIS不能用。

在研究这个问题时候,找到的几个专门研究IIS问题的朋友,本文的部分观点和结果由他们提供,如果提供的不够,大家可以去他们的博客再研究下。

【转】(C#)OPC客户端源码

申明

申明:本文为,如需本文,请获取原文作者大尾巴狼啊的同意,合作!

转自:大尾巴狼啊

原文出处:.cnblogs./xiaosacao/archive/2009/01/13/

前几天我就发布过这篇文章,可惜的是,发布后代码有的却看不到,后来我就删了,至今不明白什么原因- -!

关于C++、VB来开发OPC客户端的资料网上有很多,但C#的至今没发现有多少。

由于近期项目的需要,就开发了OPC客户端的一个模块。在我想来,程序员挺累的,原因我很累。所以我想大家也很累~~~嘿嘿。

特别是刚接手OPC客户端开发的前几天,天天盯住显示器,百度、GOOGLE不停的搜索。每天早上醒来,眼睛都瑟瑟的。

从事3年以上软件开发的朋友们,估计都会腰酸背痛吧!反正我是这样的。

不说那么多废话了,贴上源码,让需要的同行看看吧,代码的质量并不高,就当做抛砖引玉吧!

--------------------------------------------------------------------------------

1、枚举本地服务器

2、获取服务器信息

3、列出了服务器上Tag

4、可以设置组的属性

5、读写功能

6、可进行远程连接(DCOM需配置)

先看图:

引用类库:

OPC服务器:

开发工具:

当前环境:

源码:

Code

///摘要

///程式使用C#.NET 2005 编写

///引用类库

///OPCServer采用KEPWare

///在windows xp sp2、sp3、windows 2003上测试通过

///完成于:2008年12月31日

///测试于:2009年01月05日

///

///作者:潇洒草

///Email:zhkai868163.

///QQ:44649029

///

///如分发,请保留此摘要。

///鄙视那些拿代码当宝贝的人,鄙视那些你不拿源码换就不稀罕你的人,鄙视那些自私的人。

///别人看到你的代码,你能死啊?对你有多大威胁啊?强烈鄙视~~~

///如果你是这样的人,赶紧关了。。偶不欢迎。。

using System;

using c;

using entModel;

using ;

using g;

using ;

using ;

using ;

using tions;

using OPCAutomation;

namespace OPC测试通过

{

public partial class MainFrom : Form

{

public MainFrom()

{

InitializeComponent();

}

#region 私有变量

///

/// OPCServer Object

///

OPCServer KepServer;

///

/// OPCGroups Object

///

OPCGroups KepGroups;

///

/// OPCGroup Object

///

OPCGroup KepGroup;

///

/// OPCItems Object

///

OPCItems KepItems;

///

/// OPCItem Object

///

OPCItem KepItem;

///

/// 主机IP

///

string strHostIP = "";

///

/// 主机名称

///

string strHostName = "";

///

/// 连接状态

///

bool opc_connected = false;

///

/// 客户端句柄

///

int itmHandleClient = 0;

///

/// 服务端句柄

///

int itmHandleServer = 0;

#endregion

#region 方法

///

/// 枚举本地OPC服务器

///

private void GetLocalServer()

{

//获取本地计算机IP,计算机名称

IPHostEntry IPHost = e(eName);

if ( > 0)

{

strHostIP = sList[0].ToString();

}

else

{

return;

}

//通过IP来获取计算机名称,可用在局域网

IPHostEntry ipHostEntry = tByAddress(strHostIP);

strHostName=ng();

//获取本地计算机上的OPCServerName

try

{

KepServer = new OPCServer();

object serverList = Servers(strHostName);

foreach (string turn in (Array)serverList)

{

(turn);

}

edIndex = 0;

d = true;

}

catch(Exception err)

{

("枚举本地OPC服务器出错:"+e,"提示信息",,g);

}

}

///

/// 创建组

///

private bool CreateGroup()

{

try

{

KepGroups = ups;

KepGroup = ("OPCDOTNETGROUP");

SetGroupProperty();

ange += new

DIOPCGroupEvent_DataChangeEventHandler(KepGroup_DataChange);

riteComplete += new

DIOPCGroupEvent_AsyncWriteCompleteEventHandler(KepGroup_AsyncWriteComplete);

KepItems = ms;

}

catch (Exception err)

{

("创建组出现错误:"+e,"提示信息",,g);

return false;

}

return true;

}

///

/// 设置组属性

///

private void SetGroupProperty()

{

tGroupIsActive

=ean();

tGroupDeadband =

32();

Rate = 32();

ve = ean();

cribed =ean();

}

///

/// 列出OPC服务器中所有节点

///

///

private void RecurBrowse(OPCBrowser oPCBrowser)

{

//展开分支

anches();

//展开叶子

afs(true);

foreach (object turn in oPCBrowser)

{

(ng());

}

}

///

/// 获取服务器信息,并显示在窗体状态栏上

///

private void GetServerInfo()

{

="开始时间:"+ ng()+" ";

="版本:"+ ng() + "." +

ng()+"."+ng();

}

///

/// 连接OPC服务器

///

/// OPCServerIP

/// OPCServer名称

private bool ConnectRemoteServer(string remoteServerIP, string remoteServerName)

{

try

{

t(remoteServerName, remoteServerIP);

if (State == (int)ning)

{

= "已连接到-" + Name + " ";

}

else

{

//这里你可以根据返回的状态来自定义显示信息,请查看自动化接口API文档

= "状态:" + ng() + "

";

}

}

catch (Exception err)

{

("连接远程服务器出现错误:" + e, "提示信息", , g);

return false;

}

return true;

}

#endregion

#region 事件

///

/// 写入TAG值时执行的事件

///

///

///

///

///

void KepGroup_AsyncWriteComplete(int TransactionID, int NumItems, ref Array

ClientHandles, ref Array Errors)

{

= "";

for (int i = 1; i <= NumItems; i++)

{

+= "Tran:" + ng() + " CH:" +

ue(i).ToString() + " Error:" + ue(i).ToString();

}

}

///

/// 每当项数据有变化时执行的事件

///

/// 处理ID

/// 项个数

/// 项客户端句柄

/// TAG值

/// 品质

/// 时间戳

void KepGroup_DataChange(int TransactionID, int NumItems, ref Array ClientHandles,

ref Array ItemValues, ref Array Qualities, ref Array TimeStamps)

{

//为了测试,所以加了控制台的输出,来查看事物ID号

//ine("********"+ng()+"*********");

for (int i = 1; i <= NumItems; i++)

{

= ue(i).ToString();

= ue(i).ToString();

= ue(i).ToString();

}

}

///

/// 选择列表项时处理的事情

///

///

///

private void listBox1_SelectedIndexChanged(object sender, EventArgs e)

{

try

{

if (itmHandleClient != 0)

{

= "";

="";

= "";

Array Errors;

OPCItem bItem = Item(itmHandleServer);

//注:OPC中以1为数组的基数

int[] temp = new int[2] { 0, Handle };

Array serverHandle = (Array)temp;

//移除上一次选择的项

(, ref serverHandle, out Errors);

}

itmHandleClient = 1234;

KepItem = m(ng(),

itmHandleClient);

itmHandleServer = Handle;

}

catch(Exception err)

{

//没有任何权限的项,都是OPC服务器保留的系统项,此处可不做处理。

itmHandleClient = 0;

= "Error ox";

= "Error ox";

= "Error ox";

("此项为系统保留项:"+e,"提示信息");

}

}

///

/// 载入窗体时处理的事情

///

private void MainFrom_Load(object sender, EventArgs e)

{

GetLocalServer();

}

///

/// 关闭窗体时处理的事情

///

private void MainFrom_FormClosing(object sender, FormClosingEventArgs e)

{

if (!opc_connected)

{

return;

}

if (KepGroup != null)

{

ange -=

DIOPCGroupEvent_DataChangeEventHandler(KepGroup_DataChange);

}

if (KepServer != null)

{

nect();

KepServer = null;

}

opc_connected = false;

}

///

new

/// 【按钮】设置

///

private void btnSetGroupPro_Click(object sender, EventArgs e)

{

SetGroupProperty();

}

///

/// 【按钮】连接OPC服务器

///

private void btnConnLocalServer_Click(object sender, EventArgs e)

{

try

{

if (!ConnectRemoteServer(,))

{

return;

}

d = true;

opc_connected = true;

GetServerInfo();

RecurBrowse(Browser());

if (!CreateGroup())

{

return;

}

}

catch (Exception err)

{

("初始化出错:" + e, "提示信息",

, g);

}

}

///

/// 【按钮】写入

///

private void btnWrite_Click(object sender, EventArgs e)

{

OPCItem bItem = Item(itmHandleServer);

int[] temp = new int[2] { 0, Handle };

Array serverHandles=(Array)temp;

object[] valueTemp = new object[2] {"", };

Array values=(Array)valueTemp;

Array Errors;

int cancelID;

rite(1,ref serverHandles,ref values,out Errors, 2009,out

cancelID);

//();//这句也可以写入,但并不触发写入事件

t();

}

#endregion

}

}

本文来自CSDN博客,请标明出处:/hnjhjzyyxgs/archive/2009/12/11/