Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > Скрипт вывода сообщения при входе пользователя


Автор: Gloft 20.8.2007, 13:01
Здравствуйте
помогите думаю для знающих любей задачка простая
нужен VBS скрипт который бы выводил сообщение в окне, а после нажатия кнопочки (желательно чтобы название кнопки можно было поменять) запускал программу
Буду очень благодарен
Заранее спасибо

Автор: RussianHero 20.8.2007, 13:14
Код

    Begin Dialog myDialog 50,50,240,70,"Вот твое окно:"
        TextBox 5,8,228,14,."Nadpis"
        PushButton 113,30,120,14,"Открыть твою прогу",.Retry
                                PushButton 5,50,228,14,"Закрыть",.Close
    End Dialog
    Dim Okno As myDialog 
                Okno.Nadpis = "Привет"
    r% = Dialog(Okno,2,0)
    Select Case r%
        Case 1
            ЗДесь описываешь запуск проги
                 End Select

Разберешься?

Автор: Gloft 20.8.2007, 13:33
насколько я разобрался 
вместо надписи "ЗДесь описываешь запуск проги"
нужно поставить 
set wshshell = CreateObject("WScript.Shell")
wshshell.Run "notepad.exe"
я прав?

Автор: mihanik 20.8.2007, 15:11
RussianHero!!!
Твоя русский язык читать умела?

Цитата(Gloft @  20.8.2007,  13:01 Найти цитируемый пост)
нужен VBS скрипт 


А у тебя что?

Переменные типизированы
Код

 Dim Okno As myDialog 


Чего в VBS в принципе быть не может.
Там все переменные типа Variant.


Автор: RussianHero 20.8.2007, 15:13
Эм, я думаю ты прав 8)
Правдо откуда ты взял этот wshshell ?? ЧТо это за звирь такой?

Автор: mihanik 20.8.2007, 15:14
Цитата(Gloft @  20.8.2007,  13:33 Найти цитируемый пост)
set wshshell = CreateObject("WScript.Shell")
wshshell.Run "notepad.exe"


Типа того...

Код

'********************************************************************
'*
'* Функция   StartProgram ( ByVal AppName )
'* Описание: Запускает программу с именем AppName
'* Вход    : полное имя запускаемой программы
'* Выход   : ProcessID запущенной программы
'*
'********************************************************************
Function StartProgram ( ByVal AppName )
Dim WshShell, oExec

        StartProgram = 0
        On Error Resume Next

                Set WshShell = CreateObject("WScript.Shell")

                Set oExec = WshShell.Exec( AppName )

                StartProgram = oExec.ProcessID

                Set oExec    = Nothing
                Set WshShell = Nothing

        If Err.Number Then Err.Clear

        On Error Goto 0

End Function

Автор: RussianHero 20.8.2007, 15:14
И раз уж хочешь запускать ккой-то экзешник, то прописывай полный путь.. ттипа - C:\Windows\...\Proga.exe

Автор: mihanik 20.8.2007, 15:19
Цитата(mihanik @  20.8.2007,  15:14 Найти цитируемый пост)
'* Вход    : полное имя запускаемой программы


Автор: _Michael 20.8.2007, 15:55
Цитата(RussianHero @  20.8.2007,  15:14 Найти цитируемый пост)
И раз уж хочешь запускать ккой-то экзешник, то прописывай полный путь.. ттипа - C:\Windows\...\Proga.exe 


 smile как раз для C:\Windows не надо писать полный путь
Код

Dim wshshell
Set wshshell = CreateObject("WScript.Shell")
wshshell.Run "notepade.exe"


Такой код полностью работает.

Автор: Akina 20.8.2007, 22:18
Цитата(_Michael @  20.8.2007,  16:55 Найти цитируемый пост)
как раз для C:\Windows не надо писать полный путь

Надо. Если в текущем каталоге найдется прога с тем же названием - будет тебе щастье.

Цитата(RussianHero @  20.8.2007,  16:14 Найти цитируемый пост)
прописывай полный путь.. ттипа - C:\Windows\...\Proga.exe 

А вот путь к каталогу Windows надо получать программно - не у всех он на C: и не у всех - Windows

Автор: _Michael 20.8.2007, 23:33
Цитата(Akina @  20.8.2007,  22:18 Найти цитируемый пост)
Цитата(_Michael @  20.8.2007,  16:55 )
как раз для C:\Windows не надо писать полный путь


Надо. Если в текущем каталоге найдется прога с тем же названием - будет тебе щастье.

ну я же знаю какую я программу запускаю.  Т-е мне заведомо известно что такая ехе-шка там присутствует smile

Автор: RussianHero 21.8.2007, 07:40
Цитата(mihanik @  20.8.2007,  15:11 Найти цитируемый пост)
RussianHero!!!
Твоя русский язык читать умела?


Цитата(Gloft @  20.8.2007,  13:01 )
нужен VBS скрипт 



А у тебя что?

Переменные типизированы

код Visual Basic
1:

 Dim Okno As myDialog 


Чего в VBS в принципе быть не может.
Там все переменные типа Variant.


Миханик, зря ругаешься, у меня все отлично работает... Не знаю, при чем тут типизированность, щас же идет речь о диалоговом окне а не о самом файле.
Это скрипт на Васике, как и просили, а не на чем-то еще... Я-то его запускаю откуда? Это ж не Сишный код.

Автор: Akina 21.8.2007, 08:17
Цитата(_Michael @  21.8.2007,  00:33 Найти цитируемый пост)
Т-е мне заведомо известно что такая ехе-шка там присутствует 

То есть это только на твоем компе, и на другой комп никогда не попадет? ну тогда делай как тебе удобнее.

PS. У меня на компе, например, диск С: - это сидюковод.

Добавлено через 50 секунд
Цитата(RussianHero @  21.8.2007,  08:40 Найти цитируемый пост)
Миханик, зря ругаешься, у меня все отлично работает... Не знаю, при чем тут типизированность

При том что ты натыкал в файл лишнего кода, который все одно игнорируется скриптхостом.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)