VERIFICAR SE BANCO DE DADOS ACCESS ESTA ABERTO
Pessoal agradeço a ajuda mas vou expicar melhor minha dúvida, Criei um código em VB para abrir um formulário Access, tudo funciona corretamente só que preciso implemtentar em meu código VB uma condição para verificar antes de abrir o formulário se o formulário está aberto, caso esteja ele deverá ser fechado antes, isso porque meu código abre mais de um formulário. O código criado foi o seguinte:
Option Explicit
[ô]Declaracoes API
Private Declare Function ShowWindow Lib [Ô]user32.dll[Ô] (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
Private Declare Function FindWindow Lib [Ô]user32.dll[Ô] Alias [Ô]FindWindowA[Ô] (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
[ô]Constantes API
Private Const SW_MAXIMIZE = 3
Private Const SW_NORMAL = 1
[ô] faça uma referência a Microsoft Access 8.0/9.0 Object Library
[ô]Cria uma instancia do Access
Dim appAccess As New Access.Application
Public Sub MaximizeAccess()
Dim hWnd As Long
hWnd = FindWindow([Ô]OMain[Ô], [Ô]Microsoft Access[Ô])
If hWnd <> 0 Then
ShowWindow hWnd, SW_NORMAL
ShowWindow hWnd, SW_MAXIMIZE
End If
End Sub
[ô]Fecha o banco de dados
Private Sub Command3_Click()
End
End Sub
[ô]abre o banco de dados
Private Sub Form_Load()
appAccess.OpenCurrentDatabase [Ô]C:\Projeto.mdb[Ô], True
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
appAccess.CloseCurrentDatabase
appAccess.DoCmd.Quit acQuitSaveNone
End Sub
Agredeço a ajuda .
Option Explicit
[ô]Declaracoes API
Private Declare Function ShowWindow Lib [Ô]user32.dll[Ô] (ByVal hWnd As Long, ByVal nCmdShow As Long) As Long
Private Declare Function FindWindow Lib [Ô]user32.dll[Ô] Alias [Ô]FindWindowA[Ô] (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
[ô]Constantes API
Private Const SW_MAXIMIZE = 3
Private Const SW_NORMAL = 1
[ô] faça uma referência a Microsoft Access 8.0/9.0 Object Library
[ô]Cria uma instancia do Access
Dim appAccess As New Access.Application
Public Sub MaximizeAccess()
Dim hWnd As Long
hWnd = FindWindow([Ô]OMain[Ô], [Ô]Microsoft Access[Ô])
If hWnd <> 0 Then
ShowWindow hWnd, SW_NORMAL
ShowWindow hWnd, SW_MAXIMIZE
End If
End Sub
[ô]Fecha o banco de dados
Private Sub Command3_Click()
End
End Sub
[ô]abre o banco de dados
Private Sub Form_Load()
appAccess.OpenCurrentDatabase [Ô]C:\Projeto.mdb[Ô], True
End Sub
Private Sub Form_Unload(Cancel As Integer)
On Error Resume Next
appAccess.CloseCurrentDatabase
appAccess.DoCmd.Quit acQuitSaveNone
End Sub
Agredeço a ajuda .
No caso do formulário, tente colocar [Ô]If App.PrevInstance Then Unload Me[Ô] no Form_Load do formulário em que está abrindo.
Você quer verificar também o banco de dados?
Você quer verificar também o banco de dados?
Gostaria sim de verificar também se o banco de dados está aberto, agradeço a ajuda.
LETTOLIMA,
Não há necessidades de se abrir DOIS TÓPICOS com o mesmo ASSUNTO / PROBLEMA.
Segue o link para o tópico REDUNDANTE.
http://vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=Abrir&varID=323638&varWorld=
Outra coisa, a resposta para o problema mencionado foi respondido no tópico REDUNDANTE. Acesse e veja.
Para um melhor aproveitamento do SITE, ENCERRE um dos tópicos e concentre TODAS AS RESPOSTAS no outro.
Valeu!
Não há necessidades de se abrir DOIS TÓPICOS com o mesmo ASSUNTO / PROBLEMA.
Segue o link para o tópico REDUNDANTE.
http://vbmania.com.br/pages/index.php?varModulo=Forum&varMethod=Abrir&varID=323638&varWorld=
Outra coisa, a resposta para o problema mencionado foi respondido no tópico REDUNDANTE. Acesse e veja.
Para um melhor aproveitamento do SITE, ENCERRE um dos tópicos e concentre TODAS AS RESPOSTAS no outro.
Valeu!
eu verifico se a conexão esta aberta em vb, vê se te ajuda.
if conexao.state = 1 then conexao.close
if conexao.state = 1 then conexao.close
Tópico encerrado , respostas não são mais permitidas