【附加】

很多朋友问那个VS背景怎么弄的,我刚刚已经抽时间把制作步骤发出来了:

请参见《VS插件开发 - 个性化VS IDE编辑器,瞬间 高 大 上》。


最近一直在忙着一些事情,一直没有发文章了。

正好这几天在看VS插件开发方面的东西,写了个小程序,没有什么技术含量,不过还是有点意思的。呵呵。

就是打开VS的时候,会弹出一个类似登录的提示框,提示输入账号和密码:

如果输入错误,则会给出相应提示,然后直接退出VS:

如果输入正确,则提示欢迎信息,进入VS:

由于这个功能的代码和我其它的项目掺在一起了,我就不发完整的代码,说一下设计步骤吧,很简单的。

步骤如下:

打开VS,新建项目,找到左边的“其他项目类型”,里面的“VS Package”。

如果没有的话,请下载Visual Studio相应版本的SDK,安装就行了,也就一百多M。自测VS2012自带,VS2013需要另外下载。

这个项目就是VS的visx插件的制作项目,写好之后可以生成一个visx插件,直接双击可以安装到VS中的项目。

然后,新建项目后,在项目中找到"项目名Package.cs"文件,这个文件是插件每次启动运行的文件,就相当于启动文件。

所以,打开这个文件,里面会有一个构造函数,你可以在这里写登录代码,也可以在Load里面写。

新建一个登录界面窗体,在这里我创建的是WPF的窗体,然后自己拖放想要的界面,例如我的:

然后登录代码就不用我写了吧,呵呵。

最后,回到“项目名Package.cs”启动文件中,在构造或Load方法中添加启动登录界面的代码。

在这里,我是在Load中写的:

        protected override void Initialize()
        {
            base.Initialize();
            // 在初始化方法中,为当前程序Load事件添加方法
            Application.Current.MainWindow.Loaded += MainWindow_Loaded;
        }

        // Load事件的方法
        void MainWindow_Loaded(object sender, RoutedEventArgs e)
        {
            // 实例化并打开登录界面
            启动窗体 login = new 启动窗体();
            login.ShowDialog();
        }

然后,生成项目,会在项目bin\debug中产生一个“项目名.visx”插件,关闭VS,双击插件安装,然后重新打开VS,自己看效果吧。

插件会自动安装在“工具-扩展和更新”中。

如果出错,导致VS打不开,请运行cmd命令“devenv.exe /safemode”打开VS安全模式,进入“工具-扩展和更新”卸载掉刚刚你创建的插件即可。

如果还是有不懂的什么的,可以留言哦。

虽然没发多少代码吧,但是打字也不容易是吧,赞一下哈。

【来自:[LonelyShadow 博客] http://www.cnblogs.com/LonelyShadow

VS插件开发 - 登录身份验证的更多相关文章

  1. WebApi 登录身份验证

    前言:Web 用户的身份验证,及页面操作权限验证是B/S系统的基础功能,一个功能复杂的业务应用系统,通过角色授权来控制用户访问,本文通过Form认证,Mvc的Controller基类及Action的权 ...

  2. CentOS7.4配置SSH登录密码与密钥身份验证踩坑

    简单记录,自用CentOS7.4虚拟机与ALiYunVPS,在配置ssh登录身份验证时碰到的问题. 阿里云VPS:因为在重置磁盘时选择了密钥对的身份验证方式,因此VPS中的CentOS7.4中的 /e ...

  3. SQLSERVER误删除了Windows登录用户验证方式使用Windows身份验证的解决方法

    SQLSERVER误删Windows登录用户验证方式使用Windows身份验证的解决方法 今天看到这篇文章:没有了SA密码,无法Windows集成身份登录,DBA怎么办? 想起来之前着急哥问我的一个问 ...

  4. 登录失败。该登录名来自不受信任的域,不能与 Windows 身份验证一起使用

    登录失败.该登录名来自不受信任的域,不能与 Windows 身份验证一起使用 使用sever sql  远程连接数据库的时候遇到了这个问题,我用的是ADO.NET 实体数据模型,有web.config ...

  5. 【WEB API项目实战干货系列】- API登录与身份验证(三)

    上一篇: [WEB API项目实战干货系列]- 接口文档与在线测试(二) 这篇我们主要来介绍我们如何在API项目中完成API的登录及身份认证. 所以这篇会分为两部分, 登录API, API身份验证. ...

  6. asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功。请重试。 Login控件

    原文:asp.net用户身份验证时读不到用户信息的问题 您的登录尝试不成功.请重试. Login控件 现象1.asp.net使用自定义sql server身份验证数据库,在A机器新增用户A,可以登录成 ...

  7. ASP.NETwindows身份验证详细步骤-域验证登录

    Windows身份验证相比于form身份验证要方便的多,而且会有更好的安全保障. 我个人觉得windows身份验证写法有两种: 第一种非代码方式进行windows身份验证: 第二种是用代码访问活动目录 ...

  8. C# 在iis windows authentication身份验证下,如何实现域用户自动登录

    前言: 该博文产生的背景是有个项目在客户那部署方式为iis windows身份验证,而客户不想每次登录系统都要输入帐号和密码来登录. 因此需要得到域用户,然后进行判断该用户是否可以进入系统. 解决方法 ...

  9. 采用集成的Windows验证和使用Sql Server身份验证进行数据库的登录

    采用集成的Windows验证和使用Sql Server身份验证进行数据库的登录 1.集成的Windows身份验证语法范例 1 string constr = "server=.;databa ...

随机推荐

  1. 应用Grunt自动化地优化你的项目前端

    在不久前我曾写了一篇 应用r.js来优化你的前端 的文章,为大家介绍了r.js这个实用工具,它可以很好地压缩.合并前端文件并打包整个项目.但是如果将r.js放到项目中,我们不得不顾及到一个问题——项目 ...

  2. node之path模块

    node之path模块 原文链接 //引用该模块 var path = require("path"); 1.路径解析,得到规范化的路径格式 对window系统,目录分隔为'', ...

  3. 如何通过源生js获取一个元素的具体样式值 /* getCss:获取指定元素的具体样式的属性值 curElement:[dom对象] attr:[string] */

    昨天的博客些的真的是惨不忍睹啊!!!但是我的人生宗旨就是将不要脸的精神进行到底,所以,今天我又来了.哈哈哈哈哈! 方法一:元素.style.属性名:(这个有局限性--只能获取行内样式的值,对于样式表或 ...

  4. Vue 给子组件传递参数

    Vue 给子组件传递参数 首先看个例子吧 原文 html <div class="container" id="app"> <div clas ...

  5. css3属性,会动的生日蛋糕

    <!DOCTYPE html><html><head lang="en">    <meta charset="UTF-8&qu ...

  6. 龙之谷手游WebVR技术分享

    主要面向Web前端工程师,需要一定Javascript及three.js基础:本文主要分享内容为基于three.js开发WebVR思路及碰到的问题:有兴趣的同学,欢迎跟帖讨论. 目录:一.项目体验1. ...

  7. 爬虫入门——01

    1. 引言     从今天开始系统的学习网络爬虫.写这篇博客的目的在于,一来记录下自己的学习过程:二来希望可以给像我一样不懂爬虫但又对爬虫十分感兴趣的人带来一些帮助.     昨天去图书馆找有关爬虫书 ...

  8. Restful 介绍及SpringMVC+restful 实例讲解

    restful不是一个框架,称为一种编码更烦更贴切吧,其核心类位于spring-web.jar中,即RestTemplate.class restful是rpc通过http协议的一种实现方式,和web ...

  9. 多线程条件通行工具——Semaphore

    Semaphore的作用是,限制线程通行的数量,如果线程进入时达到通行数量,便等待其它正在通行的线程释放. acquire()获取通行 release()释放通行 availablePermits() ...

  10. Oracle RAC 更换存储实验

    实验环境准备: RHEL 6.5 + Oracle 11.2.0.4 RAC (2nodes) OCR和Voting Disk使用的是OCR1磁盘组,底层对应3个1G大小的共享LUN,一般冗余: DA ...