/// <summary>
/// 检测IIS及版本号
/// </summary>
/// <returns></returns>
public string GetIISVerstion()
{
RegistryKey key = Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\INetStp");
if (key == null)
return string.Empty;
else
return Convert.ToString(key.GetValue("MajorVersion")) + "." + Convert.ToString(key.GetValue("MinorVersion"));
}
From: http://www.cnblogs.com/wujy/archive/2011/10/07/2200813.html
--------------------------------------------------------------------------------------------------
asp.net 验证 服务器 文件夹 权限
(1) DirectoryInfo dInfo = new DirectoryInfo(@"d:\演示");
if(dInfo.GetDirectories().IsReadOnly==true)//只读
(2)try catch 上传一个文件试试,抛出异常查看异常是不是因为只读。
AddDirectorySecurity(DirectoryName, "IIS_IUSRS", FileSystemRights.ReadData, AccessControlType.Allow);
RemoveDirectorySecurity(DirectoryName, @"域\用户名", FileSystemRights.ReadData, AccessControlType.Allow);
// Adds an ACL entry on the specified directory for the specified account.
public static void AddDirectorySecurity(string FileName, string Account, FileSystemRights Rights, AccessControlType ControlType)
{
// Create a new DirectoryInfo object.
DirectoryInfo dInfo = new DirectoryInfo(FileName);
// Get a DirectorySecurity object that represents the
// current security settings.
DirectorySecurity dSecurity = dInfo.GetAccessControl();
// Add the FileSystemAccessRule to the security settings.
dSecurity.AddAccessRule(new FileSystemAccessRule(Account,
Rights,
ControlType));
// Set the new access settings.
dInfo.SetAccessControl(dSecurity);
}
// Removes an ACL entry on the specified directory for the specified account.
public static void RemoveDirectorySecurity(string FileName, string Account, FileSystemRights Rights, AccessControlType ControlType)
{
// Create a new DirectoryInfo object.
DirectoryInfo dInfo = new DirectoryInfo(FileName);
// Get a DirectorySecurity object that represents the
// current security settings.
DirectorySecurity dSecurity = dInfo.GetAccessControl();
// Add the FileSystemAccessRule to the security settings.
dSecurity.RemoveAccessRule(new FileSystemAccessRule(Account,
Rights,
ControlType));
// Set the new access settings.
dInfo.SetAccessControl(dSecurity);
}