如题

解决方案 »

  1.   

    打开时限定读权限,使用api打开,vb自己的函数基本没有权限限制。
      

  2.   

    If App.PrevInstance = True Then End
      

  3.   

    2楼给的是防程序多次运行的代码;
    3楼说的有点奇怪,全局变量是对一个进程的,2个进程全局变量有何用?硬盘放个标志还差不多。
    还有,lz限定打开同一个文件也没说清楚:是一个打开了此文件时另一个不能打开?还是,只要一个打开过另一个就不能打开?前者,用createfile打开文件,并设定共享none即可;后者,简单的方法可以参考3楼的,不过改成一个程序在硬盘或者注册表之类的地方放个标志,另一个程序读取该标志以判断。
      

  4.   

    有点问题啊 要是没有窗口的程序该怎么办呢  FindWindow也没用了
      

  5.   

    对楼主的意思理解不是很确切。试一下这段代码的效果:
    Private Sub Form_Load()
        Command1.Caption = "请先点我!"
        Command2.Caption = "点我再次打开文件"
        Command2.Enabled = False
    End SubPrivate Sub Command1_Click()
        Open Environ$("SystemRoot") & "\win.ini" For Binary Lock Read Write As #1
        Command2.Enabled = True
    End SubPrivate Sub Command2_Click()
        On Error GoTo E_H
        Open Environ$("SystemRoot") & "\win.ini" For Binary As #2
        Exit Sub
    E_H:
        MsgBox Err.Description, 64
    End Sub
      

  6.   

    Chen的代码应该可以   读写时锁定