Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Ошибка запуска скрипта vbs из модуля vba
 
 автор: Дядя Федор   (24.06.2014 в 14:28)   личное сообщение
 
 

Имеется скрипт (D:\VBS\VbSHELL.VBS):

OptionExplicit
MyMsg "*","Всем бояться!!!!"

Sub MyMsg(strKomu,strMsg)
Dim WshShell1 
Set WshShell1 = WScript.CreateObject("Wscript.Shell")
WshShell1.Run "msg "  & strkomu  & "  " & """" & strmsg & """", 0, 0 'ЭТО СТРОКА №7
Set WshShell1 = Nothing
End Sub



Запускается, работает.

В базе есть модуль, например

Option Compare Database
Option Explicit


Public Sub startvbs(s_namescript$)
Call Shell("Wscript.exe " & s_namescript, vbHide)
End Sub


Public Sub tst()
startvbs "D:\VBS\VbSHELL.VBS"
End Sub


При запуск ругается:
Сценарий D:\VBS\VbSHELL.VBS
Строка 7
Символ 1
Не удается найти указанный файл.

Что за хрень? Чувствую, проблема в правах, но почему они теряются при запуске из ACCESS?

ПС.
Скрипт сокращен для выделения проблемы.
Вообще сами (другие) скрипты запускаются и отрабатывают.
Затык с msg.
Пути прописывал и прямо и через %WINDIR%
НЕ РАБОТАЕТ!
Прошу помощи.

  Ответить  
 
 автор: osmor   (24.06.2014 в 15:23)   личное сообщение
 
 

msg.exe попробуй

  Ответить  
 
 автор: Дядя Федор   (24.06.2014 в 15:29)   личное сообщение
 
 

перепробовал ВСЕ.:)
Кстати Windows-7
Откуда-то запускается, откуда-то нет... вот в чем прикол.
Если с ярлыка скрипта - без проблем.
Если из vba - нет.
Из Unreal-коммандера - нет.
Пуск-найти программы и файлы ищет.
И путь вроде C:\Windows\system32\msg.exe
Но никак. блин.

  Ответить  
 
 автор: Дядя Федор   (24.06.2014 в 15:35)   личное сообщение
 
 



ЗАДАЧА РЕШЕНА
msg.exe
их там 2.
один в систем32 другой в C:\Windows\winsxs\amd64_microsoft-windows-t..commandlinetoolsmqq_31bf3856ad364e35_6.1.7600.16385_none_851e6308c5b62529

Наверное второй приоритетней и требует админовских прав.

Ищем поиском через проводник.
Копируем в папку какую-нить.
Указываем полный путь. все.



Win32path = "E:\MSGFOLDER\"

set WshShell_1 = WScript.CreateObject("Wscript.Shell")
 

WshShell_1.Run Win32path & "msg.exe " & strkomu & " " &  """" & strmsg & """", 0, 0

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList