日期:2014-05-17  浏览次数:20506 次

ASP.Net网站中使用指针出现的错误,求大神帮忙,具体问题如下
在网站中运行指针要在配置文件中加一下代码:
<system.codedom>

    <compilers>

      <!--允许运行不安全代码-->

      <compiler language = "c#;cs;csharp" warningLevel="4" extension=".cs" type="Microsoft.CSharp.CSharpCodeProvider,System, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" compilerOptions="/unsafe+" />

    </compilers>

  </system.codedom>
项目在本地运行正常,编译通过,而且指针的功能也能实现,但上传到网上后就报这个错误:
编译器警告消息: 警告: CS0108: “ASP.master1_master.Profile”隐藏了继承的成员“master1.Profile”。如果是有意隐藏,请使用关键字 new。 

我们这个产品正在给用户试用,本来答应用户给做这个功能的,结果成这样。。。
有经验的帮忙看看!


------解决方案--------------------
一般是用户权限问题,但也有例外的转折方法可以试一下,把涉及权限的代码交由HttpModule去执行

例如,我们webForm在aspx页面中没有权限获取到服务器硬件信息,但交由HttpModule后就可以执行

<httpModules>
<add type="Galsun.HH.FCX.Web.UI.HttpModule, Galsun.HH.FCX.Web.UI" name="HttpModule"/>
</httpModules>


using System;
using System.IO;
using System.Text.RegularExpressions;
using System.Threading;
using System.Web;
using System.Xml;
using Galsun.Common;
using Galsun.HH.FCX.Content;
using Galsun.HH.FCX.Mode;
using System.Data;
using System.Management;


namespace Galsun.HH.FCX.Web.UI
{
    public class HttpModule : System.Web.IHttpModule
    {
        /// <summary>
        /// 实现接口的Init方法
        /// </summary>
        /// <param name="context"></param>
        public void Init(HttpApplication context)
        {
            GetHardID();
        }
        /// <summary>
        /// 获取硬盘ID
        /// </summary>
        /// <returns>硬盘ID</returns>
        public static string GetHardID()
        {

            string HDInfo = "";

            ManagementClass cimobject1 = new ManagementClass("Win32_DiskDrive");
            ManagementClass cimobject2 = new ManagementClass("Win32_Processor");
     &nb