powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / программно на C++ запустить приложение Access 2010 и открыть базу с паролем
3 сообщений из 3, страница 1 из 1
программно на C++ запустить приложение Access 2010 и открыть базу с паролем
    #38143970
mixpf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток!
Как программно в C++ запустить приложение Access 2010 и открыть базу с паролем?
Без пароля база нармально открывается, но если она с паролем, то его необходимо вводить вручную
Как в коде передать пароль автоматически? Например, пароль 123

код C++ :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
#include "stdafx.h"
#include <windows.h>
#include <Shellapi.h>

int main()

{
ShellExecute(NULL, _T("open"), _T("C:\\Database.accdb"), NULL, NULL, SW_SHOWNORMAL); 

return 0;
}

код создан в середе Microsoft Visual C++ 2010
...
Рейтинг: 0 / 0
программно на C++ запустить приложение Access 2010 и открыть базу с паролем
    #38144591
Пётр Седов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 mixpf:
С Access-ом не работал, но наверняка его можно запустить программно через Automation. Приблизительный VBA-код (скорее всего нерабочий; по мотивам Excel-а):
Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
dim Access as Object
set Access = CreateObject("Access.Application")

' для отладки
Access.Visible = True

dim Base as Object
set Base = Access.Databases.Add
Base.Password = "123"
Base.Open("C:\Database.accdb")


Ну и перегоняем этот VBA-код в C++-код с помощью бесплатной Microsoft-овской программы B2C .
...
Рейтинг: 0 / 0
программно на C++ запустить приложение Access 2010 и открыть базу с паролем
    #38144756
mixpf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Пётр Седов,

Из VBA для Access приложение и базу Access запускаю кодом:

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
Public Declare Function ShellExec Lib "shell32.dll" Alias "ShellExecuteA" _
    (ByVal Hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
    ByVal lpParameters As String, ByVal lpDirectory As String, _
    ByVal nShowCmd As Long) As Long
Function startDB()
Const sFileDB = "C:\Database.accdb"
ShellExec 0&, "Open", sFileDB, " ", "", ShowNormal
End Function



но, опять же, с ручным вводом пароля
как автоматически передавать пароль из VBA для вышеприведенного кода тоже не нашел...
поэтому автоматизированно переводить из Visual Basic в Visual C++ пока нечего)

Ваш код пытался прикрутить, но он скорее подходит для открытия базы, а не запуска приложения Access
идея с http://support.microsoft.com/kb/216388 интересная, правда скачанный файл не запускается на висте
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / программно на C++ запустить приложение Access 2010 и открыть базу с паролем
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]