| 网站首页 | VB.Net实例分析 | .Net技术文摘 | 下载中心 | VB.Net书籍笔记 | .Net源码 | VBS脚本与组件调用 | Windows2008技术文摘 | 给我们留言 | 
最新公告:

  没有公告

您现在的位置: 乐博网 >> VB.Net实例分析 >> 安全编程 >> 实例分析正文
最新推荐 更多内容
FileDialogPermission构造函数的实例
FileDialogPermission构造函数的实例
作者:佚名    来源:乐博网收集     更新时间:2007-11-3

下面的代码示例演示了 FileDialogPermission 类的几种声明式形式和命令式形式。第一次尝试显示对话框成功;后续尝试因Main 方法发出的拒绝而失败。类使用声明性安全来请求使类中的代码运行的最小权限。

  1. Imports System   
  2. Imports System.Security   
  3. Imports System.Security.Permissions   
  4. Imports System.Windows.Forms   
  5. Imports System.IO   
  6.   
  7. ' Declare FileDialogPermissionAttribute declaratively to request minimum   
  8. ' permissions for the code in this class to run.   
  9. <ASSEMBLY: Open:="True)" SecurityAction.RequestMinimum, _ FileDialogPermissionAttribute(>    
  10.   
  11. Public Class Form1   
  12.     Inherits System.Windows.Forms.Form   
  13.   
  14.     Private fileStream As Stream   
  15.   
  16.     ' Event handler for Run button.   
  17.     Private Sub Button1_Click( _   
  18.         ByVal sender As System.Object, _   
  19.         ByVal e As System.EventArgs) Handles Button1.Click   
  20.   
  21.         tbxOutput.Cursor = Cursors.WaitCursor   
  22.         tbxOutput.Text = ""  
  23.   
  24.         tbxOutput.AppendText("Opened file " + OpenFile() + vbCrLf)   
  25.   
  26.         ' Deny permission to use of the Open dialog box.   
  27.         Dim dialogPermission As _   
  28.             New FileDialogPermission(FileDialogPermissionAccess.Open)   
  29.   
  30.         dialogPermission.Deny()   
  31.   
  32.         OpenFile()   
  33.         CloseStream()   
  34.   
  35.         ' Align interface and conclude application.   
  36.         tbxOutput.AppendText(vbCrLf + "This sample completed " + _   
  37.             "successfully; press Exit to continue.")   
  38.   
  39.         ' Reset the cursor.   
  40.         tbxOutput.Cursor = Cursors.Default  
  41.     End Sub  
  42.     ' Display open dialog box, store the file stream of the specified file   
  43.     ' in the fileStream member variable.   
  44.     Private Function OpenFile() As String  
  45.         Dim fileName As String  
  46.   
  47.         Dim openDialogBox As New OpenFileDialog   
  48.         openDialogBox.InitialDirectory = "c:\"  
  49.         openDialogBox.Filter = "txt files (*.txt)|*.txt"  
  50.         openDialogBox.RestoreDirectory = True  
  51.         Try  
  52.             ' If user selects OK, store file name and stream.  
  53.             If (openDialogBox.ShowDialog() = DialogResult.OK) Then  
  54.                 fileName = openDialogBox.FileName  
  55.                 fileStream = openDialogBox.OpenFile()  
  56.                 fileStream.Close()  
  57.             End If  
  58.         Catch ex As Exception  
  59.             tbxOutput.AppendText(ex.Message + vbCrLf)  
  60.         End Try  
  61.         openDialogBox.Dispose()  
  62.         ' Return specified file name.  
  63.         Return fileName  
  64.     End Function  
  65.     ' Close the file stream.  
  66.     Private Sub CloseStream()  
  67.         If Not fileStream Is Nothing Then  
  68.             fileStream.Close()  
  69.         End If  
  70.     End Sub  
  71.     ' Event handler for Exit button.  
  72.     Private Sub Button2_Click( _  
  73.         ByVal sender As System.Object, _  
  74.         ByVal e As System.EventArgs) Handles Button2.Click  
  75.         Application.Exit()  
  76.     End Sub  
  77. #Region " Windows Form Designer generated code "  
  78.     Public Sub New()  
  79.         MyBase.New()  
  80.         'This call is required by the Windows Form Designer.  
  81.         InitializeComponent()  
  82.         'Add any initialization after the InitializeComponent() call  
  83.     End Sub  
  84.     'Form overrides dispose to clean up the component list.  
  85.     Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)  
  86.         If disposing Then  
  87.             If Not (components Is Nothing) Then  
  88.                 components.Dispose()  
  89.             End If  
  90.         End If  
  91.         MyBase.Dispose(disposing)  
  92.     End Sub  
  93.     'Required by the Windows Form Designer  
  94.     Private components As System.ComponentModel.IContainer  
  95.     'NOTE: The following procedure is required by the Windows Form Designer  
  96.     'It can be modified using the Windows Form Designer.    
  97.     'Do not modify it using the code editor.  
  98.     Friend WithEvents Panel2 As System.Windows.Forms.Panel  
  99.     Friend WithEvents Panel1 As System.Windows.Forms.Panel  
  100.     Friend WithEvents Button1 As System.Windows.Forms.Button  
  101.     Friend WithEvents Button2 As System.Windows.Forms.Button  
  102.     Friend WithEvents tbxOutput As System.Windows.Forms.RichTextBox  
  103.     <SYSTEM.DIAGNOSTICS.DEBUGGERSTEPTHROUGH()> _  
  104.     Private Sub InitializeComponent()  
  105.         Me.Panel2 = New System.Windows.Forms.Panel  
  106.         Me.Button1 = New System.Windows.Forms.Button  
  107.         Me.Button2 = New System.Windows.Forms.Button  
  108.         Me.Panel1 = New System.Windows.Forms.Panel  
  109.         Me.tbxOutput = New System.Windows.Forms.RichTextBox  
  110.         Me.Panel2.SuspendLayout()  
  111.         Me.Panel1.SuspendLayout()  
  112.         Me.SuspendLayout()  
  113.         '  
  114.         'Panel2  
  115.         '  
  116.         Me.Panel2.Controls.Add(Me.Button1)  
  117.         Me.Panel2.Controls.Add(Me.Button2)  
  118.         Me.Panel2.Dock = System.Windows.Forms.DockStyle.Bottom  
  119.         Me.Panel2.DockPadding.All = 20  
  120.         Me.Panel2.Location = New System.Drawing.Point(0, 320)  
  121.         Me.Panel2.Name = "Panel2"  
  122.         Me.Panel2.Size = New System.Drawing.Size(616, 64)  
  123.         Me.Panel2.TabIndex = 1  
  124.         '  
  125.         'Button1  
  126.         '  
  127.         Me.Button1.Dock = System.Windows.Forms.DockStyle.Right  
  128.         Me.Button1.Font = New System.Drawing.Font( _  
  129.             "Microsoft Sans Serif", _  
  130.             9.0!, _  
  131.             System.Drawing.FontStyle.Regular, _  
  132.             System.Drawing.GraphicsUnit.Point, _  
  133.             CType(0, Byte))  
  134.         Me.Button1.Location = New System.Drawing.Point(446, 20)  
  135.         Me.Button1.Name = "Button1"  
  136.         Me.Button1.Size = New System.Drawing.Size(75, 24)  
  137.         Me.Button1.TabIndex = 2  
  138.         Me.Button1.Text = "&Run"  
  139.         '  
  140.         'Button2  
  141.         '  
  142.         Me.Button2.Dock = System.Windows.Forms.DockStyle.Right  
  143.         Me.Button2.Font = New System.Drawing.Font( _  
  144.             "Microsoft Sans Serif", _  
  145.             9.0!, _  
  146.             System.Drawing.FontStyle.Regular, _  
  147.             System.Drawing.GraphicsUnit.Point, _  
  148.             CType(0, Byte))  
  149.         Me.Button2.Location = New System.Drawing.Point(521, 20)  
  150.         Me.Button2.Name = "Button2"  
  151.         Me.Button2.Size = New System.Drawing.Size(75, 24)  
  152.         Me.Button2.TabIndex = 3  
  153.         Me.Button2.Text = "E&xit"  
  154.         '  
  155.         'Panel1  
  156.         '  
  157.         Me.Panel1.Controls.Add(Me.tbxOutput)  
  158.         Me.Panel1.Dock = System.Windows.Forms.DockStyle.Fill  
  159.         Me.Panel1.DockPadding.All = 20  
  160.         Me.Panel1.Location = New System.Drawing.Point(0, 0)  
  161.         Me.Panel1.Name = "Panel1"  
  162.         Me.Panel1.Size = New System.Drawing.Size(616, 320)  
  163.         Me.Panel1.TabIndex = 2  
  164.         '  
  165.         'tbxOutput  
  166.         '  
  167.         Me.tbxOutput.AccessibleDescription = _  
  168.             "Displays output from application."  
  169.         Me.tbxOutput.AccessibleName = "Output textbox."  
  170.         Me.tbxOutput.Dock = System.Windows.Forms.DockStyle.Fill  
  171.         Me.tbxOutput.Location = New System.Drawing.Point(20, 20)  
  172.         Me.tbxOutput.Name = "tbxOutput"  
  173.         Me.tbxOutput.Size = New System.Drawing.Size(576, 280)  
  174.         Me.tbxOutput.TabIndex = 1  
  175.         Me.tbxOutput.Text = "Click the Run button to run the application."  
  176.         '  
  177.         'Form1  
  178.         '  
  179.         Me.AutoScaleBaseSize = New System.Drawing.Size(6, 15)  
  180.         Me.ClientSize = New System.Drawing.Size(616, 384)  
  181.         Me.Controls.Add(Me.Panel1)  
  182.         Me.Controls.Add(Me.Panel2)  
  183.         Me.Name = "Form1"  
  184.         Me.Text = "FileDialogPermission"   
  185.         Me.Panel2.ResumeLayout(False)   
  186.         Me.Panel1.ResumeLayout(False)   
  187.         Me.ResumeLayout(False)   
  188.   
  189.     End Sub 
  190. #End Region   
  191. End Class  
  192. '   
  193. ' This sample produces the following output:   
  194. '   
  195. ' Opened file C:\testfile.txt   
  196. ' Request for the permission of type    
  197. ' System.Security.Permissions.FileDialogPermission, mscorlib,    
  198. ' Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 failed.   
  199. '   
  200. ' This sample completed successfully; press Exit to continue.  
  • 上一篇:

  • 下一篇:
  • 【字体: 】【打印此文】【关闭窗口
      相关文章:(只显示最新16条)
    没有相关实例分析

    | 设为首页 | 加入收藏 | 联系站长 | | 友情链接 | 版权申明 |
    乐博网欢迎各种媒体转载我们的原创作品[转载请注明出处];我们鼓励更多VB.Net开发者一起加入研究与探讨;如发现文章访问错误、内容错误或版权疑问、内容有违相关法律(如涉及政治、色情、反动或散布虚假有害信息)等情况,请及时向我们举报,我们将及时纠正!
    联系邮箱:Shiny#vip.qq.com (#替换为@) QQ交流群: 40797788 [闽ICP备05014267号]