Topic: * bat

Если вдруг  кому нибудь понадобится:
Батник позволяет выполнять код с правами администратора

первый вариант

Получаем значение параметра  server из файла settings.ini
к значению дабавляем папку liteServerSQL
капируем в нее бд sqlite.db
назначаем папке liteServerSQL общий доступ

@echo off
rem **********************************************************************************
rem прототип кода https://ss64.com/vb/syntax-elevate.html                            *
rem **********************************************************************************
setlocal
>nul 2>&1 net session&&goto run
if /i "%~1"=="yes" goto run
if /i "%~1"=="" set "args=noparam"
set "file=%~f0"
set "args=%* %args%"
set file=""%file:"=%""
set args=%args:"=""%
>"%temp%\uac.vbs" echo set objShell=CreateObject^("Shell.Application"^)
>> "%temp%\uac.vbs" echo objShell.ShellExecute "cmd", "/c ""%file% ""yes"" %args%""", , "runas", 1
cscript /nologo /e:vbscript "%temp%\uac.vbs"
exit /b

:run
>nul 2>&1 del "%temp%\uac.vbs"
cd /d "%~dp0"
title %cd%
shift
if "%~1"=="noparam" shift

rem Тестовый блок проверки параметров [в боевых условиях блок можно уничтожить]
echo.param_full=[%*]     - [test_param %%*]
echo.param_1=[%1]             - [test_param %%1]
echo.param_2=[%2]             - [test_param %%2]
echo.param_3=[%3]             - [test_param %%3]
echo.param_4=[%4]             - [test_param %%4]
echo.param_5=[%5]             - [test_param %%5]
rem ... и т.д.
rem Конец тестового блока

rem ***************************** основной блок кода / начало*****************************

set "fz=settings.ini"
set "z=server"
set "fcp=sqlite.db"
set "dsh=liteServerSQL"

setlocal enabledelayedexpansion
 <"%fz%" (for /f "delims=" %%a in ('find /i "%z%"') do @set "%%a")
 if not exist "!%z%!%dsh%" md "!%z%!%dsh%"
 net share %dsh%="!%z%!%dsh%"
 cmd /c takeown /f "!%z%!%dsh%" /r /d y && icacls "!%z%!%dsh%" /grant Administrators:F /t
 copy "%fcp%" "!%z%!%dsh%"
endlocal
rem ***************************** основной блок кода / конец *****************************

pause

второй вариант

создает в корне папку liteServerSQL
переносит в нее бд sqlite.db
назначает папке  liteServerSQL общий доступ

@echo off
rem **********************************************************************************
rem прототип кода https://ss64.com/vb/syntax-elevate.html                            *
rem **********************************************************************************
setlocal
>nul 2>&1 net session&&goto run
if /i "%~1"=="yes" goto run
if /i "%~1"=="" set "args=noparam"
set "file=%~f0"
set "args=%* %args%"
set file=""%file:"=%""
set args=%args:"=""%
>"%temp%\uac.vbs" echo set objShell=CreateObject^("Shell.Application"^)
>> "%temp%\uac.vbs" echo objShell.ShellExecute "cmd", "/c ""%file% ""yes"" %args%""", , "runas", 1
cscript /nologo /e:vbscript "%temp%\uac.vbs"
exit /b

:run
>nul 2>&1 del "%temp%\uac.vbs"
cd /d "%~dp0"
title %cd%
shift
if "%~1"=="noparam" shift

rem Тестовый блок проверки параметров [в боевых условиях блок можно уничтожить]
echo.param_full=[%*]     - [test_param %%*]
echo.param_1=[%1]             - [test_param %%1]
echo.param_2=[%2]             - [test_param %%2]
echo.param_3=[%3]             - [test_param %%3]
echo.param_4=[%4]             - [test_param %%4]
echo.param_5=[%5]             - [test_param %%5]
rem ... и т.д.
rem Конец тестового блока

rem ***************************** основной блок кода / начало*****************************
MD %~dp0liteServerSQL
move %~dp0sqlite.db %~dp0liteServerSQL\sqlite.db
net share liteServerSQL="%~dp0liteServerSQL"
cmd/c takeown /f "%~dp0liteServerSQL" /r /d y && icacls "%~dp0liteServerSQL" 
rem ***************************** основной блок кода / конец *****************************

pause

Re: * bat

Спасибо за пример!

Dmitry.