Перейти к публикации

Вопрос По Программированию Smarteam


Рекомендованные сообщения

День добрый !

Необходимо странное, но тем не менее:

нужен экзешник, при запуске которого стартует editor под заданным пользователем, без запроса авторизации

пробую вот так:

Dim Session As SmApplic.SmSession
Dim Engine As SmApplic.SmFreeThreadedEngine
Dim GUIService As SmGUISrv.SmGUIServices
Dim STapp As SmarTeam.SmApplication
 Set STapp = CreateObject("SmarTeam.SmApplication")
  Set Engine = STapp.Engine
  Engine.Init "SmTeam32"
  Set Session = STapp.Engine.CreateSession("MySession", "SmTeam32")
  Session.OpenDatabaseConnection хххх
  Session.UserLogin "ххх", "ххх"
   MsgBox "Connection Successful!"
  STapp.show

после этого все равно требует ввести имя пользователя и пароль :(

подскажите как решить задачку!

Ссылка на сообщение
Поделиться на других сайтах


У меня еще небольшой вопрос по программированию. Написал небольшую DLL, которая забирает файлы чертежей из указанного каталога и конвертирует их в PDF формат. Попросил прикрутить эту штуку к SmarTeam. Запуская через VB все работает отлично, но вызывая через Смартим появляются проблемы. Поставщик попросил сделать, чтобы форма из моей DLL была модальной. Теперь не пойму почему они это попросили и в этом ли проблема ? Большей информацией пока не обладаю. Есть идеи?

Ссылка на сообщение
Поделиться на других сайтах

2 maksi-m

Private Declare Function BringWindowToTop Lib "user32" (ByVal hwnd As Long) As Long



Public Function LoginToSmarTeam(ByVal UserName as string , ByVal UserPassword as String ) as SmApplic.SmSession



	Dim CurEngine As SmApplic.SmFreeThreadedEngine

	Dim CurSession As SmApplic.SmSession

	Set CurEngine = CreateObject("SmApplic.SmFreeThreadedEngine")

	DoEvents

	CurEngine.Init "SmTeam32"

	DoEvents

	Set CurSession = CreateObject("SmApplic.SmSession")

	DoEvents

	CurSession.Init CurEngine, "MySession", "Smteam32"

	DoEvents

	CurSession.OpenDatabaseConnection _

		CurEngine.Databases(0).Alias, _

		CurEngine.Databases(0).Password, _

		True

	DoEvents

	

	If CurSession.UserLogin(UserName , UserPassword ) Then

		Set LoginToSmarTeam = CurSession

		Exit Function

	Else

	set LoginToSmarTeam = Nothing

	End If



end function



Public Sub SwitchToSmarTeam (ByVal SmSession as SmApplic.SmSession, ByVal SmApp as SmarTeam.SmApplication)

	On Error GoTo error_ex



	Dim CADInt As SMCADINTERFACELib.SmCADInterface

	Set CADInt = SmSession.GetService("SmCad.SmCADInterface")



	CADInt.ShowSmarTeam

	DoEvents



	Call BringAnyWindowOnTop(SmApp.WindowHandle)

	DoEvents



end sub



Public Sub BringAnyWindowOnTop(ByVal hwnd As Long)

	Dim i As Long

	i = BringWindowToTop(hwnd)

	DoEvents

End Sub
Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

Вы можете опубликовать сообщение сейчас, а зарегистрироваться позже. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

  • Сейчас на странице   0 пользователей

    Нет пользователей, просматривающих эту страницу.



×
×
  • Создать...