Нужно создать исполняемый файл подключения сетевого диска в windows и присвоения ему метки - VB

Узнай цену своей работы

Формулировка задачи:

Я обычно для всего использую bat-файлы. Мне для моих задачей хватает. Но иногда нужно, чтобы задача запускалась от имени админа, а батник по умолчанию запускается без прав. Я обычно использую программу bat2execonverter, но антивирусники на нее очень плохо реагируют последнее время. Раньше, когда еще в школе я увлекался бейсиком, я прописывал некоторые команды типа "net send", "shutdown -r" через бейсиковую процедуру и компилил красивый .exe для дальнейшего его использования. Это все я расписал не просто ради какой-то истории, а чтобы вы смогли понять, что я хочу и помогли мне. Меня интересует две задачи: 1. Какой код в бейсике отвечает за запуск команды для командной строки. Т.е. вы мне дадите код (там строчек 10 не более, если я не ошибаюсь). Я просто в нужном месте подставляю нужную мне команду, компилю и получаю красивый .ехе. Так же интересует, как сделать, если я хочу несколько команд внутри одной программы поочередно запускать, т.е. несколько строчек. 2. Мне нужно подключить сетевой диск в ос windows и задать ему метку. Сетевому диску метку не задать просто так (например командой label). Нужно либо править реестр, либо задавать через .vbs (что я и хочу у вас попросить, но чтобы, я могу скомпилить в готовый .ехе в итоге). Скрипт я нашел готовый для присоединения диска и задания метки. Но он используется для обычной расшареной папки. Мне же нужно присоединить через webdav с авторизацией. А этого в готовом скрипте нет. Для cmd я использую команду net use w: https://webdav.yandex.ru /persistent:no /user:user password Вот примеры скриптов которые я нашел
Листинг программы
  1. On Error Resume Next
  2. Set objWshNetwork = CreateObject( "WScript.Network" )
  3. Set objShell = CreateObject("Shell.Application")
  4.  
  5. MapDrive "X:", "\\files\files", "Базы"
  6. Sub MapDrive(strDrive, strPath, strName)
  7. On Error Resume Next
  8. objWshNetwork.RemoveNetworkDrive strDrive, vbTrue, vbTrue
  9. objWshNetwork.MapNetworkDrive strDrive, strPath
  10. objShell.NameSpace(strDrive).Self.Name = strName
  11. End Sub
Листинг программы
  1. @Echo Off
  2. For %%A In (Z Y X W V U T S R Q P O N M L J I H G F E D C) Do (
  3. If Not Exist "%%A:" Set Disk=%%A&GoTo Jump
  4. )
  5. :Jump
  6. >"%Temp%\netdrive.vbs" (
  7. Echo On Error Resume Next
  8. Echo Set objWshNetwork = CreateObject^( "WScript.Network" ^)
  9. Echo Set objShell = CreateObject^("Shell.Application"^)
  10. Echo MapDrive "%Disk%:", "\\inquisitor\bkup\sqldumps", "Базы"
  11. Echo Sub MapDrive^(strDrive, strPath, strName^)
  12. Echo On Error Resume Next
  13. Echo objWshNetwork.RemoveNetworkDrive strDrive, vbTrue, vbTrue
  14. Echo objWshNetwork.MapNetworkDrive strDrive, strPath
  15. Echo objShell.NameSpace^(strDrive^).Self.Name = strName
  16. Echo End Sub
  17. )
  18. Call "%Temp%\netdrive.vbs"
  19. Del "%Temp%\netdrive.vbs"
Листинг программы
  1. @Echo Off
  2. SetLocal
  3. Set UNC=\\10.29.9.200\distr
  4. Set Label=distr
  5. For /F "Tokens=2 Delims==" %%A In ('WMIC path Win32_MappedLogicalDisk WHERE ProviderName^=^'%UNC:\=\\%^' Get Name /Value 2^>nul') Do (
  6. Call Net Use %%A /delete /y 1>nul 2>&1
  7. Net Use * %UNC% 1>nul 2>&1
  8. Reg Add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\%UNC:\=#%" /v _LabelFromReg /d "%Label%" /f 1>nul 2>&1
  9. )
Так же интересует какой параметр поменять, чтобы диск был постоянный и только на сеанс (это параметр /persistent:yes в cmd). Т.е. при заданном параметре он бы монтировался на постоянной основе, без параметра только до перезагрузки.

Решение задачи: «Нужно создать исполняемый файл подключения сетевого диска в windows и присвоения ему метки»

textual
Листинг программы
  1. " "

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.714 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы