vngreez@vk |
09-04-2017 17:15 2727696 |
код vbs в bat
Необходимо вставить vbs код в bat файл
например:
Вместо нужно вызвать участок кода
Как-то так:
Код:
cscript :call
:call
Код vbs
|
Вместо прямого и незатейливого в лоб «необходимо» озвучьте Вашу задачу, поясните — почему необходимо, и почему необходимо именно так.
|
vngreez@vk |
09-04-2017 17:53 2727716 |
Iska, Пытаюсь конвертировать в exe, но не как не хочет прикреплять скрипт vbs
|
Вариант??
Код:
@Echo Off
chcp 1251 >nul
Set "VBS=%TMP%\%~nx0.vbs"
Call :DoVBS
GoTo :Eof
:DoVBS
Del "%VBS%" 2>nul
>>"%VBS%" Echo Set WshS = CreateObject("WScript.Shell")
>>"%VBS%" Echo Randomize
>>"%VBS%" Echo Answ = ""
>>"%VBS%" Echo Do While 2 ^<^> WshS.Popup("Угадайте сгенерированное число от 1 до 100", 0, "Будем играться?", 33)
>>"%VBS%" Echo Quest = Int((100 * Rnd) + 1) ' Generate random value between 1 and 100.
>>"%VBS%" Echo Do
>>"%VBS%" Echo Answ = InputBox("Введите число от 1 до 100", "Угадываем задуманное число")
>>"%VBS%" Echo If Answ = "" Then Exit Do
>>"%VBS%" Echo Answ = CInt(Answ)
>>"%VBS%" Echo Diff = Abs(Answ - Quest)
>>"%VBS%" Echo If Diff = 0 Then
>>"%VBS%" Echo MsgBox CStr(Answ) + " Угадали !"
>>"%VBS%" Echo Exit Do
>>"%VBS%" Echo End If
>>"%VBS%" Echo If Diff ^> 30 Then MsgBox CStr(Answ) + " Хооолодно!!"
>>"%VBS%" Echo If 20 ^< Diff And Diff ^<= 30 Then MsgBox CStr(Answ) + " Тепло !"
>>"%VBS%" Echo If 10 ^< Diff And Diff ^<= 20 Then MsgBox CStr(Answ) + " Горячо!"
>>"%VBS%" Echo If 5 ^< Diff And Diff ^<= 10 Then MsgBox CStr(Answ) + " Почти угадали!"
>>"%VBS%" Echo If 1 ^<= Diff And Diff ^<= 5 Then MsgBox CStr(Answ) + " Еще чуть-чуть !!!"
>>"%VBS%" Echo Loop
>>"%VBS%" Echo If Answ = "" Then Exit Do
>>"%VBS%" Echo Loop
WScript.exe "%VBS%" 2>nul
Del "%VBS%" 2>nul
GoTo :Eof
|
Цитата:
Цитата vngreez@vk
Пытаюсь конвертировать в exe »
|
Кого, зачем… Я же просил: озвучьте задачу, а не выбранное Вами решение.
|
vngreez@vk |
09-04-2017 21:23 2727802 |
Iska, Совместить скрипты в одном пакетном файле
megaloman, А есть способ без создания файла?
|
vngreez@vk, есть способ — не использовать вообще пакетный файл.
|
Serguei Kouzmine |
11-04-2017 05:01 2728215 |
[ATTACH] Файл 144880[/ATTACH]
Это можно сделать в jscript - но это "нехороший" стиль "программирования" - так в Microsoft писали 15-20 лет назад (может быть поэтому получилось то что получилось?
@set @_E=1; /*
@set @_E=
@echo OFF
cscript /E:jscript %~dpnx0
goto :EOF
*/
var objShell = new ActiveXObject("WScript.shell");;
objShell.Popup("test");
|
vngreez@vk,
я так понимаю вас, вероятно, однострочник интересует (на примере копипаста буфера обмена в файл с помощью js):
Код:
@echo off
call :# "file.txt"
exit
:#
mshta "javascript:var x=clipboardData.getData('text');if(x)new ActiveXObject('Scripting.FileSystemObject').GetStandardStream(1).Write(x);close();">"%~1"
exit /b
|
vngreez@vk |
12-04-2017 20:28 2728748 |
Спасибо всем за помощь! Решил использовать создание временного файла
|
Время: 23:53.
© OSzone.net 2001-