问题描述
请教各位大大clr里能读写文件吗?比如在clr里用:FileStreamaFile=newFileStream("e:\test.txt",FileMode.OpenOrCreate);我测试会报错误,是权限问题么?
解决方案
解决方案二:
用绝对路径恐怕有问题
解决方案三:
啊,不用绝对路径怎么写啊,说穿了这个就是个SQL
解决方案四:
当然可以,报什么错?
解决方案五:
消息6522,级别16,状态1,过程LOHO_RendomNum,第0行在执行用户定义例程或聚合'LOHO_RendomNum'期间出现.NETFramework错误:System.Security.SecurityException:Requestforthepermissionoftype'System.Security.Permissions.FileIOPermission,mscorlib,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089'failed.System.Security.SecurityException:atSystem.Security.CodeAccessSecurityEngine.Check(Objectdemand,StackCrawlMark&stackMark,BooleanisPermSet)atSystem.Security.CodeAccessPermission.Demand()atSystem.IO.FileStream.Init(Stringpath,FileModemode,FileAccessaccess,Int32rights,BooleanuseRights,FileShareshare,Int32bufferSize,FileOptionsoptions,SECURITY_ATTRIBUTESsecAttrs,StringmsgPath,BooleanbFromProxy)atSystem.IO.FileStream..ctor(Stringpath,FileModemode)atStoredProcedures.LOHO_RendomNum(Int32count,Int32type)。
解决方案六:
关是建一个FileStream的对象就会报错
解决方案七:
你的IIS帐号恐怕没有往根目录写的权限。
解决方案八:
什么错误信息?
解决方案九:
应该是权限问题,你换一个目录试试看
解决方案十:
7楼的错误信息我上面贴了,直接用C#写的话不会出错
解决方案十一:
。。。明显是权限问题增加权限看看
解决方案十二:
楼上的如何增加啊?把这个txt增加修改权限?
解决方案十三:
大家帮忙看看测试程序就这样:[Microsoft.SqlServer.Server.SqlProcedure]publicstaticvoidStoredProcedure2(){FileStreamaFile=newFileStream("e:\test.txt",FileMode.OpenOrCreate);aFile.Close();aFile.Dispose();}错误信息:消息6522,级别16,状态1,过程StoredProcedure2,第0行在执行用户定义例程或聚合'StoredProcedure2'期间出现.NETFramework错误:System.Security.SecurityException:Requestforthepermissionoftype'System.Security.Permissions.FileIOPermission,mscorlib,Version=2.0.0.0,Culture=neutral,PublicKeyToken=b77a5c561934e089'failed.System.Security.SecurityException:atSystem.Security.CodeAccessSecurityEngine.Check(Objectdemand,StackCrawlMark&stackMark,BooleanisPermSet)atSystem.Security.CodeAccessPermission.Demand()atSystem.IO.FileStream.Init(Stringpath,FileModemode,FileAccessaccess,Int32rights,BooleanuseRights,FileShareshare,Int32bufferSize,FileOptionsoptions,SECURITY_ATTRIBUTESsecAttrs,StringmsgPath,BooleanbFromProxy)atSystem.IO.FileStream..ctor(Stringpath,FileModemode)atStoredProcedures.StoredProcedure2()。我把test.txt文件修改权限都加了,连guest都加上了还是不行。
解决方案十四:
你的硬盘是否ntfs格式?要是ntfs的话,跟目录下只能用管理员创建文件.
解决方案十五:
MARK
解决方案:
那我把它改为非根目录,比如e:\test\test.txt应该如何修改权限啊?
解决方案:
选择你硬盘上的e:test这个目录右键->属性->安全添加你的这个程序运行时候的用户,然后选择完全控制
解决方案:
呵呵,这个我当然知道,因为这是clr到底应该改哪个用户啊?(恕我愚钝,执行SQL应该是哪个用户)IIS用户是没问题的,因为单独用C#读写文件没问题。
解决方案:
sql2005??
解决方案:
是啊,不然怎么有clr
解决方案:
哪位大哥能帮我在clr里测试下啊,我再加分都可以,感谢
解决方案:
用filemon看到底是哪个用户不过你为什么要在你的网站之外的位置写东西?