Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут
закрыты.
Читайте
требования к создаваемым темам.
-
с@p!t@n_Nem0
-
- Начинающий
-
-
- Сообщения: 2
- Зарегистрирован: 21.04.2006 (Пт) 17:56
-
с@p!t@n_Nem0 » 21.04.2006 (Пт) 18:07
Товарисчи... проблемка.. короче мне нужно написать прогу на VB.. чтобы она открывала 1С... коннектилась к БД и запускала на исполнение файлы *.epf...
Код:
Dim cntr As Object
Dim trade As Object
Private Sub cmdProg_Click()
Set cntr = CreateObject("V8.COMConnector")
Set trade = cntr.Connect("File=""C:\Program Files\1cv8\Base\enterprise demo"";Usr="" Абдулов (гендиректор)"";")
End Sub
Проблемка вот в чем.. короче к БД он коннектиться.. все нормально.. но он не запускает графическую оболочку 1С.. мож кто может помочь? Как ее можно запустить?
И еще вопрос... то что описано -реально? Т.е. в принципе запустить и законнектиться как я понимаю можно.. но можно ли из под VB запустить в 1С файл *.epf на исполнение??? Именно с использованием VB, а не встроенного языка..
Заранее респект отозвавшимся..
-
Роман-вб
-
- Постоялец
-
-
- Сообщения: 520
- Зарегистрирован: 04.04.2006 (Вт) 9:40
- Откуда: Средняя полоса
-
Роман-вб » 21.04.2006 (Пт) 18:21
Попробуй
В осн. модуле:
- Код: Выделить всё
Public Declare Function ShellExecute 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
Public Const SW_SHOWMAXIMIZED = 3
Вызов:
- Код: Выделить всё
Call ShellExecute(0, "open", "D:\GOST7798-70.pdf", "", "", SW_SHOWMAXIMIZED)
D:\GOST7798-70.pdf -- то, что надо открыть.
Жить ещё 2 недели, работы на 8 лет, но я докажу на деле, на что способен аскет!
-
Ruslan Demidow
-
- Мужчина!
-
-
- Сообщения: 987
- Зарегистрирован: 25.03.2004 (Чт) 13:39
- Откуда: N.Novgorod
-
Ruslan Demidow » 21.04.2006 (Пт) 18:51
Роман-вб писал(а):Попробуй
В осн. модуле:
- Код: Выделить всё
Public Declare Function ShellExecute 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
Public Const SW_SHOWMAXIMIZED = 3
Вызов:
- Код: Выделить всё
Call ShellExecute(0, "open", "D:\GOST7798-70.pdf", "", "", SW_SHOWMAXIMIZED)
D:\GOST7798-70.pdf -- то, что надо открыть.
Не поймёт 1С имя файла в качестве параметра (файл который нужно открыть). Только если это не файл параметров пакетного режима.
Не проще ли сделать в глобальном модуле (в 1С) в процедура ПриНачалеРаботыСистемы проверку на нужного пользователя (можно добавить проверку и на время запуска), и если это тот пользователь что нам нужен - уже средствами языка 1С открыть файл, который нам нужен.
На VB - это будет слишком муторно...
Это Ж-ж-ж-ж неспроста (с) Винни-Пух
-
с@p!t@n_Nem0
-
- Начинающий
-
-
- Сообщения: 2
- Зарегистрирован: 21.04.2006 (Пт) 17:56
-
с@p!t@n_Nem0 » 24.04.2006 (Пн) 8:39
Всем спасибо
-
Matew
-
- Постоялец
-
-
- Сообщения: 894
- Зарегистрирован: 28.06.2004 (Пн) 17:44
- Откуда: Дальний Восток, г. Ха
-
Matew » 24.04.2006 (Пн) 9:02
1С 7.7 можно запускать, как ActiveX, тогда она умеет запускать базы и выполнять в них комманды на встроенном языке. Наверняка так можно и в 8ке.
Алкоголь и сканеры-ваши враги! Не верите-смотрите аватару
Вернуться в Visual Basic 1–6
Кто сейчас на конференции
Сейчас этот форум просматривают: AhrefsBot, Google-бот, SemrushBot, Yandex-бот и гости: 173