掛機鎖屏小軟件


我想做個掛機鎖屏的  和網吧鎖屏的類似   用vs2010  window做  把透明調到50%  就還能看到桌面的內容的那種   必須輸入密碼才 能進入回復
以下是兩個界面。第一個界面用於輸入密碼  輸入密碼之后就 鎖屏   同時轉到第二個界面  第二個界面是滿屏的  半透明   同時顯示桌面  [img=http://b93.photo.store.qq.com/psb?/V13QDNfl0CBQ6W/ezXMF7jH37qVL.7jZRkrbl4l9vFMUQK9TRpjd3cgKds!/b/YTBceTf8lwAAYmNkeTfKkQAA][/img]
[img=http://b101.photo.store.qq.com/psb?/V13QDNfl0CBQ6W/*JM0jP4Gl9QcXD.q1zJVapxJAxSV3HnWGIjrJXCLY3k!/b/YT3qNDymEwAAYuSqQjxXFAAA][/img]

第一個界面的代碼容易  我主要是不會寫 怎么控制第二個 滿屏  還有怎么就不能點  不能用快捷鍵   有人說要用到timer控件  這個是干嘛的   求大神幫忙啊

11 个解决方案

#1


這是我第一個界面的代碼:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace locked
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        public string pwd = "";
        private void button1_Click(object sender, EventArgs e)
        {
            if ((txtpwd1.Text == txtpwd2.Text) && txtpwd1.Text != "")
            {
                pwd = txtpwd1.Text;
                Form2 f2 = new Form2(pwd); 
                this.Hide();
                f2.Show();       
            }
            if (txtpwd1.Text == "" || txtpwd2.Text == "")
            {
                MessageBox.Show("密碼不能為空");
                txtpwd1.Text = "";
                txtpwd2.Text = "";
            }   
            if(txtpwd1.Text!=txtpwd2.Text)
            {
                MessageBox.Show("兩次密碼不一致,請重新輸入");
                txtpwd1.Text = "";
                txtpwd2.Text = "";
            }
        }

        private void Form1_Load(object sender, EventArgs e)
        {

        }
    }
}

#2


這是我第二個的代碼
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;

namespace locked
{
    public partial class Form2 : Form
    {
        string str = String.Empty;
        public Form2(string psd)
        {
            InitializeComponent();
            this.str = psd;
        }
        
        private void button1_Click(object sender, EventArgs e)
        {
             Form1 f1 = new Form1();
             if (str == txtpwd.Text)
             {
                 LockWorkStation();
                 this.Dispose();
             }
             else
             {
                 txtpwd.Text = "密碼錯誤,請重新輸入";
             }
        }

        private void Form2_Load(object sender, EventArgs e)
        {
            Location = new Point(0, 0);
            Size = new Size(Screen.PrimaryScreen.Bounds.Width, Screen.PrimaryScreen.Bounds.Height);
            this.TopMost = true;
        }

        private void Form2_FormClosing(object sender, FormClosingEventArgs e)
        {
            //e.Cancel = true;
        }
        [DllImport("User32.dll ")]

        public static extern void LockWorkStation();
        private void txtpwd_Click(object sender, EventArgs e)
        {
            this.txtpwd.Text = "";
        } 

    }
}

#3


可是這樣 第二個輸入密碼時  調的window自帶的那個桌面鎖定啊    我不用window自己的那個鎖定方法啊

#4


該回復於2012-03-15 14:08:10被版主刪除

#5


高手們看看吧,我想知道怎么用c#調用Sql腳本,而且,腳本里的嚇幾項還要換號自己winfrom的文本框的值

SELECT @DB = '{db}'
SELECT @DBName = 'db_MyTest' -- 用於程序連接數據庫
SELECT @Schema = 'dbo'
SELECT @tableName = '{tableName}'
這幾項要自己能在winfrom里的文本框動態添加

#6


你想截胡?這個可能不行吧

#7


樓主真逗,你應該先考慮怎樣實現主要功能
先想想怎么截住快捷鍵,系統消息,重啟是否失效。界面什么的都是小事情。

#8


http://download.csdn.net/detail/spongelearn/4137590

看看我寫的這個吧……功能都實現了

以前我也是用的兩個窗體,后來發現一個窗體足夠矣……

#9


引用 8 樓 spongelearn 的回復:
http://download.csdn.net/detail/spongelearn/4137590

看看我寫的這個吧……功能都實現了

以前我也是用的兩個窗體,后來發現一個窗體足夠矣……


我這個除了重啟和關機 其他的都完美屏蔽 

#10


啊哦 以前看過一本c# 例子的書上有介紹過 樓主可以去找找 綠色封面滴很厚的說
介紹滴蠻詳細的 神馬api的 要攔截任務管理器 退出快捷鍵 神馬的

#11


終於弄出來了  但是重啟就不行了  哪位大神教我 重啟也要輸密碼的方法啊

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com