如何获得cmos日期/时间asp.net

时间:2013-12-24 09:47:30

标签: c#

我正在asp.net开发一个应用程序,我想在7天内创建一个DEMO版本..我试图通过检查当前日期和过去7天然后在asp.net中停止演示应用程序。不会开始。 但问题是用户从Windows控制面板然后应用程序更改日期。不会检测到它会运行..我想要 cmos日期/时间没有在线

int num=7;  
int smonth=convert.toint32(Datetime.Now.Date.Tostring());  

             if ((num < smonth) || (num == smonth))
            {

                ScriptManager.RegisterStartupScript(this, this.GetType(), "Window", "alert('Please Update your Licence Key');", true);
            }

            else
            {
                if (crt_val == "0")
                {

                    Session["UserId"] = txtusername.Text.Trim();
                    objuser.UserCode = txtusername.Text.Trim();
                    objuser.Password = s_hex_md5(txtpassword.Text.Trim());
                    string pwd = s_hex_md5(txtpassword.Text);
                    objuser.Ccode = ddlCode.SelectedValue;
                    objuser.Lcode = ddlLocation.SelectedValue;
                    DataTable dt = new DataTable();
                    dt = objdata.UserLogin(objuser);
                    if (dt.Rows.Count > 0)
                    {
                        if ((dt.Rows[0]["UserCode"].ToString().Trim() == txtusername.Text.Trim()) && (dt.Rows[0]["Password"].ToString().Trim() == pwd) && (dt.Rows[0]["CompCode"].ToString().Trim() == ddlCode.SelectedValue) && (dt.Rows[0]["LocationCode"].ToString().Trim() == ddlLocation.SelectedValue))
                        {
                            Session["Isadmin"] = dt.Rows[0]["IsAdmin"].ToString().Trim();
                            Session["Usernmdisplay"] = txtusername.Text.Trim();
                            Session["Ccode"] = dt.Rows[0]["CompCode"].ToString().Trim();
                            Session["Lcode"] = dt.Rows[0]["LocationCode"].ToString().Trim();
                            if (Session["Isadmin"].ToString() == "1")
                            {
                                Session["RoleCode"] = "1";
                            }
                            else
                            {
                                Session["RoleCode"] = "2";
                            }
                            Response.Redirect("Dashboard.aspx");
                        }
                        else
                        {
                            ScriptManager.RegisterStartupScript(this, this.GetType(), "Window", "alert('User Name and Password Wrong');", true);

                        }

                    }
                    else
                    {
                        ScriptManager.RegisterStartupScript(this, this.GetType(), "Window", "alert('Please Update your Licence Key');", true);

                    }
                }
                else
                { }

            }

任何人都帮助我......

2 个答案:

答案 0 :(得分:1)

当用户在控制面板中更改时间时,用户IS正在更改CMOS日期/时间。

您可能希望让您的应用程序联机时间服务器以获取正确的日期/时间。

关于如何在这里做到的优秀答案

https://stackoverflow.com/a/12150289/263003

答案 1 :(得分:0)

DateTime中的

C#结构为您提供运行代码的计算机的日期和时间详细信息。因此,如果您想向客户端提供演示应用程序,您可以在您控制的Server上部署应用程序。因此,即使客户更改日期和时间,用户也无法更改日期和时间,因为应用程序代码在不同的计算机上运行,​​因此不会影响应用程序。

DateTime.Now gives you the Current date and time of the Server

所以我建议维护一个专门的server来为客户部署/维护网站。