2015-07-13 93 views
0

我第一次与ASP组件工作..我创建2个文件.. 1个TXT已以下代码:错误 'ASP 0177:800401f3'

 
REDIRECT redir.asp 
width 420 
height 50 
border 0 
* 
homeloan.gif 
http://www.paisavasoolbank.com 
All Kinds of Home Loans 
70 
hawai.gif 
http://www.hotelhawai.com 
Visit Hotel Hawai 
30 

,并用下面的代码第二ASP文件:

<html> 
<head> 
</head> 
<body> 
<% 
Set myad= Server.CreateObject("MSWC.AdRotator") 
Response.Write(myad.GetAdvertisement("adrotator.txt")) 
%> 
</body> 
</html> 

ASP文件的执行导致以下错误:

 
Server object error 'ASP 0177 : 800401f3' 

Server.CreateObject Failed 

/MyWeb/choicenext.asp, line 7 

800401f3 

我不知道这是什么因为是新来的这个概念。

+2

这可能有助于http://ediblecode.com/blog/dev/asp-800401f3-error,不幸的是你的问题太广泛了。你没有提供任何关于你的环境的细节*(Windows Server版本等,或者你是否使用服务器)*是你的架构32或64位?,你使用的是什么版本的IIS *(5,6,7或更高版本) *名单继续。基本上,虽然这个错误意味着服务器要么没有创建'MSWC.AdRotator'组件的权限,要么它找不到*(可能是因为它没有在COM中注册或在错误的地方注册)*。 – Lankymart

+3

可能的重复http://stackoverflow.com/q/19392038/692942 – Lankymart

+0

我正在使用Windows 7家庭高级版64位和IIS7安装。这不是服务器,Comp不在任何网络上。有人告诉我,AdRotator不再受IIS7的支持。我没有任何想法。什么是替代方案? – YusufSM

回答

0

MSWC.AdRotator我假设是一个DLL。在使用它之前,您必须将其注册为COM对象。有不同的方式,这些具体取决于您使用的是32位或64位和您的IIS版本,但一般你的选择可以分解到注册地:

C或C++或其他二进制文件使用REGSVR32

  1. c:\ windows \ system32 \ regsvr32.exe 32位计算机上的32位dll 和64位计算机上的64位dll
  2. c:\ windows \ syswow64 \ regsvr32.exe 32位dll 64位机器

对于.NET框架DLL你必须使用Regasm在框架文件夹中找到注册它们

  1. C:\程序Files \ Microsoft \框架\在 .NET 2
  2. 下的dll 2 ...... \ regasm.exe :\程序Files \ Microsoft \框架\ 4 ...... \在 .NET 4

regasm.exe的DLL说实话,每当我在怀疑,当我与这些工作,我只是尝试了以上所有四项,直到其中一项工作,这当然不是最佳做法。

下面是另一个可以更好地解释何时使用regsvr32 vs regasm的问题。 What is difference between RegAsm.exe and regsvr32? How to generate a tlb file using regsvr32?

+0

伟大的建议*“只是尝试他们都会工作”* *(释义)*。如果你不了解差异,你不应该试着回答这个问题。更何况你还没有提到在这个问题的评论中浮现的众多'Server.CreateObject失败'问题中没有提到的东西。对于COM库注册,正确的文件是'regsvr32.exe'。 – Lankymart

+0

第1点。部分正确 - 'c:\ windows \ system32 \ regsvr32'分别用于在32位和64位机器上注册32位和64位DLL。第2点。如果用'regsvr32.exe'替换regsvr.exe,则是正确的。 – Lankymart

+0

只是想帮忙,谢谢指出我错在哪里。 – sanpaco