Страница 25 из 27

Добавлено: Чт дек 14, 2017 12:23
ingerard
Flasher
Оказывается wscript.exe который находится у меня в системе так же нормально работает если его поместить в папку рядом с TCScript.dll. Именно из своей системной папки он не хочет работать или вызов на него как-то неправильно делается.

p.s. Вы были правы, удалось увидеть что за консоль появляется, и в ней фигурирует путь на CScript.exe. Как это исправить?

Добавлено: Чт дек 14, 2017 12:56
Flasher
ingerard писал(а):или вызов на него как-то неправильно делается.
Вызов — это путь к скрипту с параметрами и только.
А если set %PATH% из cmd выполнить, в списке C:\system32 будет?
ingerard писал(а):Как это исправить?
Зачем это исправлять? Не использовать, да и всё.

Добавлено: Чт дек 14, 2017 13:11
ingerard
Flasher писал(а):А если set %PATH% из cmd выполнить, в списке C:\system32 будет?
Переменная среды C:\Program Files\NVIDIA Corporation\PhysX\Common;C:\Windows\sys
tem32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\
v1.0\;C:\Program Files\ESET\ESET Remote Administrator\Console\ не определена

Flasher писал(а):Зачем это исправлять? Не использовать, да и всё.
Так если просто указывать путь к скрипту, то оно вызывает CScript.exe, я его и не использую и соответственно скрипт не работает :)

Добавлено: Чт дек 14, 2017 13:25
Flasher
Нужно выполнить: cscript //H:WScript

Добавлено: Чт дек 14, 2017 13:52
ingerard
Flasher
Ну теперь оно ссылается нормально, только уже не видит TСScript:
Скриншот

А чем плохо что я делал? Положить рядом 2 файлика и не беспокоиться что что-то в системе не так...

Добавлено: Чт дек 14, 2017 14:19
Flasher
ingerard
Так на скриншоте другой скрипт. Я же писал об условиях, сославшись на 8 п. памятки.
ingerard писал(а):Положить рядом 2 файлика и не беспокоиться что что-то в системе не так
1. При системном функционале в указании в комстроке интерпретатора нет необходимости.
2. При большом объёме скриптов в bar/ini забирается место.
3. Запуск от встроенного интерпретатора осуществляется немного быстрее, т. к. согласуется с реестром, а не с манифестом.

Добавлено: Чт дек 14, 2017 14:47
ingerard
Flasher писал(а):Так на скриншоте другой скрипт.
Так я тестирую скрипты, где требуется TCScript, вот с ними беда.
Flasher писал(а):Запуск от встроенного интерпретатора осуществляется немного быстрее
Хорошо согласен, только я не пойму как сделать чтоб заработало от встроенного.

Добавлено: Чт дек 14, 2017 15:02
Flasher
ingerard писал(а):Так я тестирую скрипты, где требуется TCScript, вот с ними беда.
С ними его и надо использовать. Это же совершенно очевидно и, уже который раз повторяю, задано условием.
ingerard писал(а):Хорошо согласен, только я не пойму как сделать чтоб заработало от встроенного.
В каком случае? Я же в первом пункте написал "При системном функционале". С этим какие-то проблемы?

Добавлено: Чт дек 14, 2017 15:35
ingerard
Flasher
Я уже ничего не понимаю...
Вот скрипт.
Вот команда:

Код: Выделить всё

[em_ext_savetocliprelavpath]
cmd=%COMMANDER_PATH%\Addons\TCScript\wscript.exe %COMMANDER_PATH%\Scripts\RelativePath.vbs
menu=Копировать относительные пути выбранных объектов
При таком варианте все отлично работает, на любых системах, все портативно, регистрировать ничего отдельно не надо.

А вот при таком раскладе, ссылаясь на встроенный интерпретатор, все очень плохо, ошибки:
Команда:

Код: Выделить всё

[em_ext_savetocliprelavpath]
cmd=%COMMANDER_PATH%\Scripts\RelativePath.vbs
menu=Копировать относительные пути выбранных объектов
И я не пойму, из-за чего ошибка, почему она не видеть TCScript и что ее регистрировать постоянно надо?

Добавлено: Чт дек 14, 2017 15:57
Flasher
ingerard
Такое ощущение, как будто я на каком другом языке только что всё объяснял.
Системный (он же встроенный) функционал не подразумевает задействования сторонних компонентов аля TCScript.dll. Именно в таких скриптах (а их здесь подавляющее большинство) не требуется переносной wscript.exe. Вы зачем-то опять приводите скрипт с применением TCScript.dll. Что тут может быть неясно-то? И что неясно в п. 8 памятки? Условие задано, используем переноску, не задано — не используем. Уже как КО разъясняю. Речь идёт исключительно о выборочном формировании кнопок и юзеркоманд, а не о наличии или отсутствии необходимых в некоторых ситуациях компонентов в сборке ТС.
  • Изображение

Добавлено: Ср фев 28, 2018 00:14
Dimsok
Скрипт из этой темы
Нужна модификация, чтобы указывать данные для поиска и замены в параметрах кнопки, чтобы по нажатию на неё сразу осуществлялась замена. Желательно, чтобы была возможность задавать параметры для трёх условий замены. Например: "ночь" "день" горячо" "холодно" "+" "-".

Добавлено: Ср фев 28, 2018 04:42
Flasher
Dimsok
Опять про первый пункт снизу памятки напомнить?

Код: Выделить всё

'====================== VBS ======================
' Многократная замена в выбранных текстовых файлах

' Параметры: %WL <строка поиска> <строка замены>
' Ключ учёта регистра: /cs

' Допустимо несколько строк поиска и замены.
' Пример: %WL country страна Russia Россия yes да
'=================================================
Option Explicit : Dim N, A, C, Title, FSO, List, F, All, i
If Not WSH.Arguments.Named.Exists("cs") Then N = 1
Set A = WSH.Arguments.UnNamed : C = A.Count
If C = 0 Then WSH.Quit
Title = " Замена текста в выбранных файлах      "
If C Mod 2 = 0 Then MsgBox _
"Нечётное число строк поиска и замены!", 4144, Title : WSH.Quit
Set FSO = CreateObject("Scripting.FileSystemObject")
Set List = FSO.OpenTextFile(A(0),,,-1)
Do : F = List.ReadLine
  If FSO.FileExists(F) Then
    All = FSO.OpenTextFile(F).ReadAll
    For i = 1 To C - 2 Step 2
      All = Replace(All, A(i), A(i + 1), 1, -1, N)
    Next
    With FSO.OpenTextFile(F, 2) .Write All : .Close : End With
  End If
Loop Until List.AtEndOfStream : List.Close
If i Then MsgBox "Выполнено!", 4160, Title
Впрочем, у nhrt (c автоопределением и выбором кодировок) есть -list, что может оказаться более предпочтительным.

Добавлено: Ср фев 28, 2018 05:55
Avada
Dimsok
Замечание за оверквотинг. Код заменён ссылкой. Сто раз говорилось, что не надо дублировать полный текст скрипта.
От исходного кода то, что было приведено, отличалось только отсутствием (причём без всяких пояснений) строки

Код: Выделить всё

MsgBox "Поиск с заменой завершен!", vbInformation, "Поиск и замена"

Добавлено: Сб дек 01, 2018 20:33
HEXFIX
Всем доброго времени суток. Поиском пользовался, честно :)
Заранее прошу извинить, если пишу не в тот топик.
Собственно, сам вопрос. У всех после обновления до Windows 10 October Update (1809) перестали работать все скрипты и кнопки, использующие TCWSHelp.exe, или это что-то глубоко личное?

Добавлено: Сб дек 01, 2018 21:12
Flasher
HEXFIX
Наверно, это у мелкомягких что-то личное. Из TCx32 не работает?
С портабл-версией как?