当前位置:编程学习 > C#/ASP.NET >>

开发的软件在win7下文件拖拽至textbox没有反应,有大大知道的么?

在xp下用vs2005开发的窗体(VB),里面有个textbox控件
 在窗体里写了 
    Private Sub TextBox1_DragDrop(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox1.DragDrop
        If e.Data.GetDataPresent(DataFormats.FileDrop) Then
            Me.TextBox1.Clear()
            Dim MyFiles() As String
            Dim i As Integer
            MyFiles = e.Data.GetData(DataFormats.FileDrop)
            Me.TextBox1.Text = MyFiles(i)
        End If
    End Sub

    Private Sub TextBox1_DragEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DragEventArgs) Handles TextBox1.DragEnter
        If e.Data.GetDataPresent(DataFormats.FileDrop) Then
            e.Effect = DragDropEffects.All
        End If

    End Sub

同时把textbox控件allowdrop属性设置好true了
程序到xp里能实现拖拽文件,textbox里就显示路径的功能。但是到了win7下就不行了
查了点资料,说win7下由于uac什么的限制,用ChangeWindowMessageFilter来解决,可是我用了还是没有用啊,有大大知道么?(注:我开发的程序已经是管理员方式运行了)
(注2.有资料说是explorer.exe的权限太低,我的程序权限太高的问题什么的)
  --------------------编程问答-------------------- 补充下我这么用ChangeWindowMessageFilter的

’这个是申明
Declare Function ChangeWindowMessageFilter Lib "user32.dll" (ByVal Message As Long, ByVal dwFlag As Integer) As Boolean
‘这几行是写在form_load里了
            ChangeWindowMessageFilter(&H233, 1)
            ChangeWindowMessageFilter(&H4A, 1)
            ChangeWindowMessageFilter(&H49, 1)
--------------------编程问答-------------------- 用Administrator帐号登录 --------------------编程问答--------------------
引用 2 楼 yyz985 的回复:
用Administrator帐号登录

我已经是管理员账号了,程序已经是管理员权限了 --------------------编程问答-------------------- Administrator帐号,不是有管理员权限的帐号,不一样的 --------------------编程问答--------------------
引用 4 楼 yyz985 的回复:
Administrator帐号,不是有管理员权限的帐号,不一样的

我研究了下,问题是给客户用的程序啊,不会要客户用Administrator帐号登陆吧。

我在做程序时,为了能在win7安装到programfiles下读写文件,用manifest文件提升权限。然后造成我的程序是管理员模式启动了,但是文件拖拽到我的程序成了UIACESS=false了。
提及这个网上有什么白名单什么方式,可是我失败了。
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,