Изменить путь загрузки DLL

Alex1983

Разработчик
Сообщения
1,145
Реакции
243
Всем привет.
У меня просьба, кто сможет написать два батника?
1. Заносить в переменную окружения PATH значение от куда запущен бат файл.
2. Удаляет это значение.

Можно и на VBScript, JScript

Заранее благодарен.
 
применил этот код
Код:
For /f "tokens=2*" %a In ('Reg query "HKCU\Environment" /v Path') Do Set "userpath=%b"
set newpath=%userpath%;C:\myfolder2
setx path "%newpath%"
но у меня нет значения C:\myfolder2
 
и ты не уточнил это должно работать на всех системах? Просто цитирую из статьи
setx, входящей в состав Windows 7.
то есть на системах ниже может её не быть.
Правда тут есть ссылка на скачивание этой утилиты
SetX (setx.exe): Это средство командной строки обеспечивает метод пакета для переменных среды настройки пользователя или в среде системы. Средства нет программ или сценариев. Может потребоваться переменной среды и соответствующее значение из командной строки. Также можно получить значения разделов реестра и записывать их в текстовые файлы. Чтобы загрузить данное средство, щелкните следующую ссылку:
http://download.Microsoft.com/download/win2000platform/setx/1.00.0.1/NT5/en-US/setx_setup.exe
применил этот код
в cmd или из батника?
Учтите, что код выше рассчитан на выполнение в командной строке. В командном файле (CMD) символы процента в первой строке должны быть двойными.
 
Попробовал в cmd. Работает, но в переменной PATH всё равно нет этой строки C:\myfolder

А как теперь можно удалить это значение.
не много надо поравить
это 1. Заносить в переменную окружения PATH значение от куда запущен бат файл.
на это 1. Заносить в переменную окружения PATH значение от куда запущен бат файл + \tools
 
Alex1983, или я не понял задачу или все не так сложно:
CMD/BATCH:
@echo off
SetLocal EnableExtensions EnableDelayedExpansion
Chcp 866 >nul
title text title
cd /d "%~dp0"

set path=%cd%
echo %path%
pause
exit /B
 
Последнее редактирование:
либо я не понял задачу. Alex1983, тебе надо, чтобы эта переменная была в батнике и была на время работы батника или добавить в систему, чтобы другие программы видели эту переменную окружения?
 
Надо, что бы эта переменная была в системе.
Для чего это надо, с программой таскаю все длл но для работы они должны быть рядом с программой или систем32.
В систем32 свои длл копировать не охота(не каждому пользователю это понравится).
Вот я и хочу добавить в переменную path путь до папки где содержатся все мои длл

как занести Путь до батфайла или cmd\tools
 
Alex1983, а вообще лучше .dll зашей в ресурсы, а одну 7z.dll можно и рядом оставить. Если программа вдруг будет некорректно завершена, то твоя запись в реестре остнется, так что портативной она не будет (это уже псевдопортабл) и многие пользователи такое не любят ;0.
Заносить в переменную окружения PATH значение от куда запущен бат файл + \tools
%cd% = путь к паке,откуда батник запущен.
Koza Nozdri, ты не точен. Ты заносишь в %cd% путь к этой папке, а сам путь к папке %~dp0 добавляем к нему \tools и получаем в %cd% путь откуда запущен бат файл + \tools
 
Alex1983, ты загружаешь свою DLL с неявной компоновкой или через LoadLibrary ?
 
Последнее редактирование модератором:
Назад
Сверху Снизу