.net vbc:错误BC30138无法创建临时文件 [英] .net vbc : error BC30138 Unable to create temp file

查看:103
本文介绍了.net vbc:错误BC30138无法创建临时文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述




我很沮丧,因为我甚至无法展示一个简单的

Hello World。 .Net上的消息。我已经通过了所有的小组和

搜遍了整个地方,并且无法找到解决这个问题的

解决方案。 />

首先,服务器是Windows Server 2003 - 网络版(IIS 6)和

我正在使用.Net Framework v1.1.4322。


这个问题?当我尝试在vs.net中浏览器中查看ASPX页面

时收到如下错误消息:


vbc:错误BC30138:无法在路径中创建临时文件

''c:\windows \ system32 \inetsrv \%SYSTE~1 \ TEMP \'':目录名称是

无效。


当然目录名无效,它本来应该看起来是

forC:\windows \temp\"但无法使用%systemroot%\ temp \找到它对于

某种原因。 (注意:我可以通过在Windows资源管理器中的%systemroot%\ temp \中键入

来导航到C:\ Windows \\\\\\\\\\\\\\\\\\\\\\\ />
编译器在

C:\ WINDOWS \ Microoft.NET \ Framework \v1.1.4322 \Temp orary ASP.NET Files中创建临时文件。

没有问题,我已将此位置修改为另一个文件夹

并且工作正常... web.config中的tempDirectory属性

似乎不是问题。


我已经检查了TEMP的环境变量并将其设置为

"%SYSTEMROOT%\ TEMP \"因为它应该是。我甚至尝试过将这个改为另一个目录而没有任何运气。


我已经完全控制了C:\ WINDOWS \ TEMP \NETWORK

SERVICE的文件夹用户,这似乎没什么帮助。


我们非常感谢您提供的任何帮助。

Rob

推荐答案

Rob。


检查你是否冒充,因为账号
$当您使用模拟时,ASP.NET使用的b $ b会发生变化。


使用此文章作为权限核对表,并验证

帐户是否为''重新使用ASP.NET具有列出的NTFS权限:

http://msdn.microsoft.com/library/de...l/secmod15.asp


另外,请检查标题为分配最低权限的部分

并确保您用于ASP.NET的帐户具有
$ b列出$ b帐户权限。


Juan T. Llibre,ASP.NET MVP

ASP.NET常见问题解答: http://asp.net.do/faq/

Foros de ASP.NET en Espa?ol: http://asp.net。 do / foros /

================================== ====

< ro ******** @ gmail.com>在消息中写道

news:11 ********************** @ g44g2000cwa.googlegr oups.com ...
Hi, Rob.

Check whether you are impersonating or not, since the account
used by ASP.NET changes when you use impersonation.

Use this article as a permissions checklist, and verify that the
account you''re using for ASP.NET has the NTFS permissions listed :

http://msdn.microsoft.com/library/de...l/secmod15.asp

Also, check the section titled : "To assign minimum privileges"
and make sure the account you''re using for ASP.NET has the
account privileges listed.


Juan T. Llibre, ASP.NET MVP
ASP.NET FAQ : http://asp.net.do/faq/
Foros de ASP.NET en Espa?ol : http://asp.net.do/foros/
======================================
<ro********@gmail.com> wrote in message
news:11**********************@g44g2000cwa.googlegr oups.com...


我很沮丧,因为我甚至无法展示一个简单的Hello World。 .Net上的消息。我已经通过了所有小组,并在各地搜索过,并且无法找到解决这个问题的方法。

首先关闭,服务器是Windows Server 2003 - 网络版(IIS 6)和
我正在使用.Net Framework v1.1.4322。

问题是什么?当我尝试在vs.net浏览器中查看ASPX页面时,我收到一条错误消息,说明如下:

vbc:错误BC30138:无法在路径中创建临时文件
''c:\ windows \ system32 \inetsrv \%SYSTE~1 \\\ TEMP \'':目录名称无效。

当然目录名无效,它应该看起来为C:\ windows \\\\\\\\\\\\\\\\\\\\\\\\但无法使用%systemroot%\ temp \找到它因为某种原因。 (注意:我可以在Windows资源管理器中的%systemroot%\ temp \中键入
导航到C:\ Windows \\\\\\\\\\\\\\\\\\\\\在
C:\ WINDOWS \ Microsoft.NET.NET \ Framework \v1.1.4322 \Temp orary ASP.NET Files中创建临时文件,没有任何问题,我是已将此位置修改为另一个文件夹
并且工作正常... web.config中的tempDirectory属性
似乎不是问题。

我检查了TEMP的环境变量,并将其设置为
"%SYSTEMROOT%\ TEMP \"因为它应该是。我甚至尝试过将这个改为另一个目录而没有任何运气。

我已经设置了对C:\ WINDOWS \ TEMP \文件夹的完全控制权。 网络服务用户,这似乎没有帮助。

您可以提供的任何帮助将不胜感激。
Rob
Hi,

I''m quite frustrated in the fact that I can''t even display a simple
"Hello World" message on .Net. I''ve been through all of the groups and
searched all over the place and haven''t been able to figure out the
solution to this problem.

First off, the server is Windows Server 2003 - Web Edition (IIS 6) and
I''m using .Net Framework v1.1.4322.

The problem? When I try to view an ASPX page in the browser in vs.net
I get an error message that states as follows:

vbc : error BC30138: Unable to create temp file in path
''c:\windows\system32\inetsrv\%SYSTE~1\TEMP\'': The directory name is
invalid.

Of course the directory name is invalid, it''s supposed to be looking
for "C:\windows\temp\" but can''t find it using "%systemroot%\temp\" for
some reason. (NOTE: I''m able to navigate to C:\Windows\Temp\ by typing
in %systemroot%\temp\ in windows explorer)

The compiler creates the temp files in
"C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temp orary ASP.NET Files"
with no problems, and I''ve modified this location to a different folder
and that works fine as well...the tempDirectory attribute in web.config
doesn''t seem to be the problem.

I''ve checked the environment variable for TEMP and it''s set to
"%SYSTEMROOT%\TEMP\" as it''s supposed to be. I''ve even tried changing
this to another directory as well and without any luck.

I have set full control on the C:\WINDOWS\TEMP\ folder for the "NETWORK
SERVICE" user and this doesn''t seem to help.

Any help that you can provide would be greatly appreciated.
Rob


嗨Juan,


感谢您的回复,非常感谢您的帮助。我通过那篇文章去了
,我害怕我比以前更加困惑

。我想要冒充吗?有什么影响?


我在web.config中查看了该特定应用程序,并且您发送给我的文章中的

部分不在其中。

< identity impersonate =" true"

userName =" registry:HKLM \ SOFTWARE \YourSecureApp \

identity \ ASPNET_SETREG,userName"

password =" registry:HKLM \ SOFTWARE \YourSecureApp \

identity \ASPNET_SETREG,password" />


这里是我的machine.config文件中processModel标签的内容:

< processModel

enable =" true"

timeout =" Infinite"

idleTimeout =" Infinite"

shutdownTimeout =" 0 :00:05"

requestLimit =" Infinite"

requestQueueLimit =" 5000"

restartQueueLimit =" 10"

memoryLimit =" 60"

webGarden =" false"

cpuMask =" 0xffffffff"

userName =" ; system"

password =" AutoGenerate"

logLevel ="错误"

clientConnectedCheck =" 0:00:05"

comAuthenticationLevel =" Connect"

comImpersonationLevel =" Impersonate"

responseDeadlockInterval =" 00:03:00"

maxWorkerThreads =" 20"

maxIoThreads =" 20"

/>


comImpersonationLevel =" Impersonate"意味着它被设置为

冒充?


我使用NETWORK SERVICE用户进行了权限核对清单

似乎没问题。如何确定其他用户是谁?b $ b假冒?


再次感谢您的帮助。

Rob


" Juan T. Llibre"写道:
Hi Juan,

Thanks for your response, your help is greatly appreciated. I went
through that article and I''m afraid I''m even more confused than I was
before. Do I want impersonation or not? What are the implications?

I checked in the web.config for that particular application and the
section in the article you sent me to is not in it.
<identity impersonate="true"
userName="registry:HKLM\SOFTWARE\YourSecureApp\
identity\ASPNET_SETREG,userName"
password="registry:HKLM\SOFTWARE\YourSecureApp\
identity\ASPNET_SETREG,password" />

Here''s what''s in my machine.config file for the processModel tag:
<processModel
enable="true"
timeout="Infinite"
idleTimeout="Infinite"
shutdownTimeout="0:00:05"
requestLimit="Infinite"
requestQueueLimit="5000"
restartQueueLimit="10"
memoryLimit="60"
webGarden="false"
cpuMask="0xffffffff"
userName="system"
password="AutoGenerate"
logLevel="Errors"
clientConnectedCheck="0:00:05"
comAuthenticationLevel="Connect"
comImpersonationLevel="Impersonate"
responseDeadlockInterval="00:03:00"
maxWorkerThreads="20"
maxIoThreads="20"
/>

Does comImpersonationLevel="Impersonate" mean that it''s set to
impersonate?

I did the permissions checklist with the NETWORK SERVICE user and it
appears to be ok. How do I determine who the other user is under
impersonation?

Thanks again for your help.
Rob

"Juan T. Llibre" wrote:
Rob。

检查你是否冒充,因为当你使用模仿时,ASP.NET使用的帐户会发生变化。使用本文作为权限核对表,并验证您用于ASP.NET的
帐户是否已列出NTFS权限:

http://msdn.microsoft.com/library /de...y/en-us/secmod
/html/secmod15.asp
另外,请查看标题为分配最低权限的部分
并制作确保您用于ASP.NET的帐户具有列出的
帐户权限。



Juan T. Llibre,ASP.NET MVP
ASP.NET常见问题: http://asp.net.do/faq/
Foros de ASP.NET en Espa?ol: http://asp.net.do/福罗斯/
======================================
< ro ********@gmail.com>在消息中写道
新闻:11 ********************** @ g44g2000cwa.googleg roups.com ...
Hi, Rob.

Check whether you are impersonating or not, since the account
used by ASP.NET changes when you use impersonation.

Use this article as a permissions checklist, and verify that the
account you''re using for ASP.NET has the NTFS permissions listed :

http://msdn.microsoft.com/library/de...y/en-us/secmod /html/secmod15.asp
Also, check the section titled : "To assign minimum privileges"
and make sure the account you''re using for ASP.NET has the
account privileges listed.


Juan T. Llibre, ASP.NET MVP
ASP.NET FAQ : http://asp.net.do/faq/
Foros de ASP.NET en Espa?ol : http://asp.net.do/foros/
======================================
<ro********@gmail.com> wrote in message
news:11**********************@g44g2000cwa.googleg roups.com...


我很沮丧,因为我甚至无法展示一个简单的Hello World。 .Net上的消息。我已经通过所有小组
并搜遍了整个地方,并且无法找到解决这个问题的方法。

首先关闭,服务器是Windows Server 2003 - 网络版(IIS 6)
,我正在使用.Net Framework v1.1.4322。

问题是什么?当我尝试在浏览器中查看
vs.net中的ASPX页面时,我收到一条错误消息,说明如下:

vbc:错误BC30138:无法在路径中创建临时文件
''c:\ windows \ system32 \inetsrv \%SYSTE~1 \\\ TEMP \'':目录名称无效。

当然目录名无效,它应该看起来为C:\ windows \\\\\\\\\\\\\\\\\\\\\\\\但无法使用%systemroot%\ temp \找到它
由于某种原因。 (注意:我能够通过在Windows资源管理器中输入%systemroot%\ temp \
导航到C:\ Windows\Temp \)

编译器创建临时文件在
C:\ WINDOWS \ Mesrosoft.NET \ Framework \v1.1.4322 \Temp orary ASP.NET
Files中没有问题,我已将此位置修改为另一个
文件夹,并且工作正常...
web.config中的tempDirectory属性似乎不是问题。

我检查了TEMP的环境变量,并将其设置为
"%SYSTEMROOT%\ TEMP \"因为它应该是。我甚至尝试过将
更改为另一个目录而没有任何运气。

我已经设置了对C:\ WINDOWS \ TEMP \文件夹的完全控制权。
" NETWORK SERVICE"用户,这似乎没有帮助。

您可以提供的任何帮助将不胜感激。
Rob
Hi,

I''m quite frustrated in the fact that I can''t even display a simple
"Hello World" message on .Net. I''ve been through all of the groups and searched all over the place and haven''t been able to figure out the
solution to this problem.

First off, the server is Windows Server 2003 - Web Edition (IIS 6) and I''m using .Net Framework v1.1.4322.

The problem? When I try to view an ASPX page in the browser in vs.net I get an error message that states as follows:

vbc : error BC30138: Unable to create temp file in path
''c:\windows\system32\inetsrv\%SYSTE~1\TEMP\'': The directory name is
invalid.

Of course the directory name is invalid, it''s supposed to be looking
for "C:\windows\temp\" but can''t find it using "%systemroot%\temp\" for some reason. (NOTE: I''m able to navigate to C:\Windows\Temp\ by typing in %systemroot%\temp\ in windows explorer)

The compiler creates the temp files in
"C:\WINDOWS\Microsoft.NET\Framework\v1.1.4322\Temp orary ASP.NET Files" with no problems, and I''ve modified this location to a different folder and that works fine as well...the tempDirectory attribute in web.config doesn''t seem to be the problem.

I''ve checked the environment variable for TEMP and it''s set to
"%SYSTEMROOT%\TEMP\" as it''s supposed to be. I''ve even tried changing this to another directory as well and without any luck.

I have set full control on the C:\WINDOWS\TEMP\ folder for the "NETWORK SERVICE" user and this doesn''t seem to help.

Any help that you can provide would be greatly appreciated.
Rob




-

通过.NET新闻组发送
http://www.dotnetnewsgroups.com


嗨Juan,


我也注意到了在本文的顶部,这似乎不适用于
适用于IIS 6.0(未启用IIS 5隔离模式)。我正在运行

IIS 6并且不想打开IIS 5隔离模式。我正在使用

Windows 2003和IIS 6.0。


这里是直接引用:


适用于

此模块适用于以下产品和技术:


Microsoft?视窗? XP或Windows 2000 Server(带Service Pack 3)和

以后的操作系统

Microsoft .NET Framework 1.0版(带Service Pack 2)及更高版本

版本

Internet信息服务(IIS)5.0或6.0(仅当使用IIS 5.0

隔离模式时)


谢谢!

Rob


-

通过.NET新闻组发送
http://www.dotnetnewsgroups.com
Hi Juan,

I also noticed at the top of this article that this doesn''t seem to
apply to IIS 6.0 (without IIS 5 isolation mode enabled). I am running
IIS 6 and don''t want to turn on IIS 5 isolation mode. I am using
Windows 2003 with IIS 6.0.

Here''s a direct quote:

Applies To
This module applies to the following products and technologies:

Microsoft? Windows? XP or Windows 2000 Server (with Service Pack 3) and
later operating systems
Microsoft .NET Framework version 1.0 (with Service Pack 2) and later
versions
Internet Information Services (IIS) 5.0 or 6.0 (only when using IIS 5.0
isolation mode)

Thanks!
Rob

--
Sent via .NET Newsgroups
http://www.dotnetnewsgroups.com


这篇关于.net vbc:错误BC30138无法创建临时文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆