我已经通过CodeDOM编译器编译了一个程序,它拒绝打开,除非它被赋予了管理权限,为什么会这样?这是我的代码中的东西吗?这是经常发生的事吗?
//rkey.SetValue("program", Application.ExecutablePath);
this.txtBox.Location = new System.Drawing.Point(10, 25);
this.wb.Location = new System.Drawing.Point(0, 0);
this.btn.Location = new System.Drawing.Point(10, 65);
this.txtBox.Size = new System.Drawing.Size(120, 20);
this.wb.Size = GetScreen().Size;
this.btn.Size = new System.Drawing.Size(120, 25);
this.btn.Text = "Check Key";
btn.Click += btn_Click;
this.Controls.Add(btn);
this.Controls.Add(txtBox);
this.Controls.Add(wb);
wb.Navigate("{SURV_URL}");
this.WindowState = FormWindowState.Maximized;
this.MinimumSize = this.Size;
this.MaximumSize = this.Size;
StartPosition = FormStartPosition.CenterScreen;
MessageBox.Show("{MSG_DESC}", "{MSG_TITLE}");
它编译得非常好,但我无法在没有管理员权限的情况下运行它,当我尝试运行时,它甚至根本不显示程序,它只是拒绝运行并且不会给我一个错误消息,但如果我单击以管理员身份运行,则运行正常。
答案 0 :(得分:0)
看起来您正在尝试写入regestry键。只有在不以管理员身份运行时才能在某个位置使用。
然而,任何地方都可以阅读。
如果您必须在注册表中存储信息,我建议您查看用户具有写入权限的位置。可悲的是,我不清楚这一点,所以你必须自己找到它。 : - (