Можно ли сделать EXE из формы доступа? - PullRequest
2 голосов

Я бы хотел, чтобы пользователь думал, что он использует обычную winform, но в бэкэнде я хочу, чтобы доступ обрабатывал содержимое БД.

можно ли просто использовать форму доступа и все остальное исчезнет в фоновом режиме? мы можем сделать exe из формы?

что такое MDE?

Ответы [ 2 ]

3 голосов
/ 17 мая 2010

Вы не можете сделать EXE из базы данных доступа, как говорили другие, но вы можете в значительной степени скрыть тот факт, что ваше приложение написано в доступе. Например, вы можете ...

  • Добавить пользовательский экран-заставку

Для этого просто сохраните файл BMP в той же папке, что и ваша БД, и назовите его точно таким же именем файла, т.е. MyDatabase.BMP. Когда доступ запускается вместо того, чтобы видеть заставку доступа, вы увидите свой собственный.

  • Изменить значок панели задач

В вашей базе данных зайдите в Tools-Startup и измените значок приложения на значок по вашему выбору

  • Изменить значок на ваших формах

Вы можете изменить значок на ваших формах со стандартного доступа на что угодно, вставить этот код в модуль

Option Compare Database
Option Explicit

Private Declare Function LoadImage Lib "user32" _
   Alias "LoadImageA" _
   (ByVal hInst As Long, _
   ByVal lpsz As String, _
   ByVal un1 As Long, _
   ByVal n1 As Long, _
   ByVal n2 As Long, _
   ByVal un2 As Long) _
   As Long

Private Declare Function SendMessage Lib "user32" _
   Alias "SendMessageA" _
   (ByVal hwnd As Long, _
   ByVal wMsg As Long, _
   ByVal wParam As Long, _
   lParam As Any) _
   As Long

Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long

Private Const WM_SETICON = &H80
Private Const IMAGE_ICON = 1
Private Const LR_LOADFROMFILE = &H10
Private Const SM_CXSMICON    As Long = 49
Private Const SM_CYSMICON    As Long = 50

Public Function SetFormIcon(hwnd As Long, strIconPath As String) As Boolean
    Dim lIcon As Long
    Dim lResult As Long
    Dim x As Long, y As Long

    x = GetSystemMetrics(SM_CXSMICON)
    y = GetSystemMetrics(SM_CYSMICON)
    lIcon = LoadImage(0, strIconPath, 1, x, y, LR_LOADFROMFILE)
    lResult = SendMessage(hwnd, WM_SETICON, 0, ByVal lIcon)
End Function

Затем вы можете назвать это так в событии OnOpen формы

SetFormIcon Me.hwnd, (“C:\Stuff\NewIcon.ico")
1 голос
/ 17 мая 2010

Нет. Это невозможно в MS Access.

Вам потребуется создать исполняемый файл VB / VB.NET и заново реализовать там свой код пользовательского интерфейса, указав соединение для передачи данных, указывающее на серверную часть базы данных Access.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...