Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Секреты файла Rasphone.pbk или какой текст нужен для корректной работы файла Rasphone

Ответить
Настройки темы
CMD/BAT - Секреты файла Rasphone.pbk или какой текст нужен для корректной работы файла Rasphone

Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


Добрый день, коллеги.

Пишу Bat файл для добавления в файл %USERPROFILE%\AppData\Roaming\Microsoft\Network\Connections\Pbk\rasphone.pbk нового VPN подключения.

Обнаружил интересную особенность, если текст записывается из bat файла, то файл rasphone.pbk перестает работать, следовательно я не вижу VPN\Dialup соединений в панели управления.

Если текст скопировать из самого rasphone.pbk и продублировать в файле, то соединение создается.

В чем же секрет данного файла и текста в нем.

Ниже приведены примеры текстов, если их скопировать в файл rasphone.pbk, то один из них будет работать, а другой нет.

Пример неработающего текста -
Код: Выделить весь код
[MS_VPN1] 
Encoding=1 
PBVersion=2 
Type=2 
AutoLogon=0 
UseRasCredentials=1 
LowDateTime=2016871744 
HighDateTime=30333636 
DialParamsUID=1031494 
Guid=11567330C4F89945B38B2CA0BDAF4E9F 
VpnStrategy=1 
ExcludedProtocols=8 
LcpExtensions=1 
DataEncryption=256 
SwCompression=0 
NegotiateMultilinkAlways=0 
SkipDoubleDialDialog=0 
DialMode=0 
OverridePref=15 
RedialAttempts=3 
RedialSeconds=60 
IdleDisconnectSeconds=0 
RedialOnLinkFailure=1 
CallbackMode=0 
CustomDialDll= 
CustomDialFunc= 
CustomRasDialDll= 
ForceSecureCompartment=0 
DisableIKENameEkuCheck=0 
AuthenticateServer=0 
ShareMsFilePrint=1 
BindMsNetClient=1 
SharedPhoneNumbers=0 
GlobalDeviceSettings=0 
PrerequisiteEntry= 
PrerequisitePbk= 
PreferredPort=VPN3-0 
PreferredDevice=Мини-порт глобальной сети (PPTP)
PreferredBps=0 
PreferredHwFlow=1 
PreferredProtocol=1 
PreferredCompression=1 
PreferredSpeaker=1 
PreferredMdmProtocol=0 
PreviewUserPw=1 
PreviewDomain=1 
PreviewPhoneNumber=0 
ShowDialingProgress=1 
ShowMonitorIconInTaskBar=1 
CustomAuthKey=0 
AuthRestrictions=512 
IpPrioritizeRemote=0 
IpInterfaceMetric=0 
IpHeaderCompression=0 
IpAddress=0.0.0.0 
IpDnsAddress=0.0.0.0 
IpDns2Address=0.0.0.0 
IpWinsAddress=0.0.0.0 
IpWins2Address=0.0.0.0 
IpAssign=1 
IpNameAssign=1 
IpDnsFlags=0 
IpNBTFlags=1 
TcpWindowSize=0 
UseFlags=2 
IpSecFlags=0 
IpDnsSuffix=microsoft.ru
Ipv6Assign=1 
Ipv6Address=:: 
Ipv6PrefixLength=0 
Ipv6PrioritizeRemote=1 
Ipv6InterfaceMetric=0 
Ipv6NameAssign=1 
Ipv6DnsAddress=:: 
Ipv6Dns2Address=:: 
Ipv6Prefix=0000000000000000 
Ipv6InterfaceId=0000000000000000 
DisableClassBasedDefaultRoute=0 
DisableMobility=0 
NetworkOutageTime=0 
ProvisionType=0 
PreSharedKey= 
CacheCredentials=1 
 
NETCOMPONENTS= 
ms_msclient=1 
ms_server=1 
 
MEDIA=rastapi 
Port=VPN3-0 
Device=Мини-порт глобальной сети (PPTP)
  
DEVICE=vpn 
PhoneNumber=a2.microsoft.ru 
AreaCode= 
CountryCode=0 
CountryID=0 
UseDialingRules=0 
Comment= 
FriendlyName= 
LastSelectedPhone=0 
PromoteAlternates=0 
TryNextAlternateOnFail=1
Тот же текст, только работающий -

Код: Выделить весь код
[MS_VPN1]
Encoding=1
PBVersion=2
Type=2
AutoLogon=0
UseRasCredentials=1
LowDateTime=2016871744
HighDateTime=30333636
DialParamsUID=1031494
Guid=11567330C4F89945B38B2CA0BDAF4E9F
VpnStrategy=1
ExcludedProtocols=8
LcpExtensions=1
DataEncryption=256
SwCompression=0
NegotiateMultilinkAlways=0
SkipDoubleDialDialog=0
DialMode=0
OverridePref=15
RedialAttempts=3
RedialSeconds=60
IdleDisconnectSeconds=0
RedialOnLinkFailure=1
CallbackMode=0
CustomDialDll=
CustomDialFunc=
CustomRasDialDll=
ForceSecureCompartment=0
DisableIKENameEkuCheck=0
AuthenticateServer=0
ShareMsFilePrint=1
BindMsNetClient=1
SharedPhoneNumbers=0
GlobalDeviceSettings=0
PrerequisiteEntry=
PrerequisitePbk=
PreferredPort=VPN3-0
PreferredDevice=Мини-порт глобальной сети (PPTP)
PreferredBps=0
PreferredHwFlow=1
PreferredProtocol=1
PreferredCompression=1
PreferredSpeaker=1
PreferredMdmProtocol=0
PreviewUserPw=1
PreviewDomain=1
PreviewPhoneNumber=0
ShowDialingProgress=1
ShowMonitorIconInTaskBar=1
CustomAuthKey=0
AuthRestrictions=512
IpPrioritizeRemote=0
IpInterfaceMetric=0
IpHeaderCompression=0
IpAddress=0.0.0.0
IpDnsAddress=0.0.0.0
IpDns2Address=0.0.0.0
IpWinsAddress=0.0.0.0
IpWins2Address=0.0.0.0
IpAssign=1
IpNameAssign=1
IpDnsFlags=0
IpNBTFlags=1
TcpWindowSize=0
UseFlags=2
IpSecFlags=0
IpDnsSuffix=microsoft.ru
Ipv6Assign=1
Ipv6Address=::
Ipv6PrefixLength=0
Ipv6PrioritizeRemote=1
Ipv6InterfaceMetric=0
Ipv6NameAssign=1
Ipv6DnsAddress=::
Ipv6Dns2Address=::
Ipv6Prefix=0000000000000000
Ipv6InterfaceId=0000000000000000
DisableClassBasedDefaultRoute=0
DisableMobility=0
NetworkOutageTime=0
ProvisionType=0
PreSharedKey=
CacheCredentials=1

NETCOMPONENTS=
ms_msclient=1
ms_server=1

MEDIA=rastapi
Port=VPN3-0
Device=Мини-порт глобальной сети (PPTP)

DEVICE=vpn
PhoneNumber=a2.microsoft.ru
AreaCode=
CountryCode=0
CountryID=0
UseDialingRules=0
Comment=
FriendlyName=
LastSelectedPhone=0
PromoteAlternates=0
TryNextAlternateOnFail=1
Пример bat файла
Код: Выделить весь код
@echo off & color 0a
echo ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
echo                                create vpn
echo ::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
rem Присовение переменных.
set FULLPATHFILE=%USERPROFILE%\AppData\Roaming\Microsoft\Network\Connections\Pbk\rasphone.pbk
set NAMEFILE=rasphone.pbk
set PATHFILE=%USERPROFILE%\AppData\Roaming\Microsoft\Network\Connections\Pbk\
set DefaultNameVPN=MS_VPN
::::::::::::::::::::::::::Create vpn::::::::::::::::::::::::::::::
rem Проверка существования файла.
if not exist %FULLPATHFILE% (
    echo FAIL: The configuration file is missing, the script is complete.
    pause
	exit /b 1
)
rem Проверка пустой ли файл.
rem call :filesize %FULLPATHFILE%
rem echo file size is %size%
rem if %size% == 0 (
rem	echo 2> %temp%\vpn.pbk
rem ) else (
rem	echo. > %temp%\vpn.pbk
rem )
echo 2> %temp%\vpn.txt
call :GetName
echo [%NameVPN%] >> %temp%\vpn.txt
echo Encoding=1 >> %temp%\vpn.txt
echo PBVersion=2 >> %temp%\vpn.txt
echo Type=2 >> %temp%\vpn.txt
echo AutoLogon=0 >> %temp%\vpn.txt
echo UseRasCredentials=1 >> %temp%\vpn.txt
echo LowDateTime=2016871744 >> %temp%\vpn.txt
echo HighDateTime=30333636 >> %temp%\vpn.txt
echo DialParamsUID=1031494 >> %temp%\vpn.txt
echo Guid=1567330C4F89945B38B2CA0BDAF4E9F >> %temp%\vpn.txt
echo VpnStrategy=1 >> %temp%\vpn.txt
echo ExcludedProtocols=8 >> %temp%\vpn.txt
echo LcpExtensions=1 >> %temp%\vpn.txt
echo DataEncryption=256 >> %temp%\vpn.txt
echo SwCompression=0 >> %temp%\vpn.txt
echo NegotiateMultilinkAlways=0 >> %temp%\vpn.txt
echo SkipDoubleDialDialog=0 >> %temp%\vpn.txt
echo DialMode=0 >> %temp%\vpn.txt
echo OverridePref=15 >> %temp%\vpn.txt
echo RedialAttempts=3 >> %temp%\vpn.txt
echo RedialSeconds=60 >> %temp%\vpn.txt
echo IdleDisconnectSeconds=0 >> %temp%\vpn.txt
echo RedialOnLinkFailure=1 >> %temp%\vpn.txt
echo CallbackMode=0 >> %temp%\vpn.txt
echo CustomDialDll= >> %temp%\vpn.txt
echo CustomDialFunc= >> %temp%\vpn.txt
echo CustomRasDialDll= >> %temp%\vpn.txt
echo ForceSecureCompartment=0 >> %temp%\vpn.txt
echo DisableIKENameEkuCheck=0 >> %temp%\vpn.txt
echo AuthenticateServer=0 >> %temp%\vpn.txt
echo ShareMsFilePrint=1 >> %temp%\vpn.txt
echo BindMsNetClient=1 >> %temp%\vpn.txt
echo SharedPhoneNumbers=0 >> %temp%\vpn.txt
echo GlobalDeviceSettings=0 >> %temp%\vpn.txt
echo PrerequisiteEntry= >> %temp%\vpn.txt
echo Prerequisitetxt= >> %temp%\vpn.txt
echo PreferredPort=VPN3-0 >> %temp%\vpn.txt
echo PreferredDevice=Мини-порт глобальной сети (PPTP) >> %temp%\vpn.txt
echo PreferredBps=0 >> %temp%\vpn.txt
echo PreferredHwFlow=1 >> %temp%\vpn.txt
echo PreferredProtocol=1 >> %temp%\vpn.txt
echo PreferredCompression=1 >> %temp%\vpn.txt
echo PreferredSpeaker=1 >> %temp%\vpn.txt
echo PreferredMdmProtocol=0 >> %temp%\vpn.txt
echo PreviewUserPw=1 >> %temp%\vpn.txt
echo PreviewDomain=1 >> %temp%\vpn.txt
echo PreviewPhoneNumber=0 >> %temp%\vpn.txt
echo ShowDialingProgress=1 >> %temp%\vpn.txt
echo ShowMonitorIconInTaskBar=1 >> %temp%\vpn.txt
echo CustomAuthKey=0 >> %temp%\vpn.txt
echo AuthRestrictions=512 >> %temp%\vpn.txt
echo IpPrioritizeRemote=0 >> %temp%\vpn.txt
echo IpInterfaceMetric=0 >> %temp%\vpn.txt
echo IpHeaderCompression=0 >> %temp%\vpn.txt
echo IpAddress=0.0.0.0 >> %temp%\vpn.txt
echo IpDnsAddress=0.0.0.0 >> %temp%\vpn.txt
echo IpDns2Address=0.0.0.0 >> %temp%\vpn.txt
echo IpWinsAddress=0.0.0.0 >> %temp%\vpn.txt
echo IpWins2Address=0.0.0.0 >> %temp%\vpn.txt
echo IpAssign=1 >> %temp%\vpn.txt
echo IpNameAssign=1 >> %temp%\vpn.txt
echo IpDnsFlags=0 >> %temp%\vpn.txt
echo IpNBTFlags=1 >> %temp%\vpn.txt
echo TcpWindowSize=0 >> %temp%\vpn.txt
echo UseFlags=2 >> %temp%\vpn.txt
echo IpSecFlags=0 >> %temp%\vpn.txt
echo IpDnsSuffix=ms.ru >> %temp%\vpn.txt
echo Ipv6Assign=1 >> %temp%\vpn.txt
echo Ipv6Address=:: >> %temp%\vpn.txt
echo Ipv6PrefixLength=0 >> %temp%\vpn.txt
echo Ipv6PrioritizeRemote=1 >> %temp%\vpn.txt
echo Ipv6InterfaceMetric=0 >> %temp%\vpn.txt
echo Ipv6NameAssign=1 >> %temp%\vpn.txt
echo Ipv6DnsAddress=:: >> %temp%\vpn.txt
echo Ipv6Dns2Address=:: >> %temp%\vpn.txt
echo Ipv6Prefix=0000000000000000 >> %temp%\vpn.txt
echo Ipv6InterfaceId=0000000000000000 >> %temp%\vpn.txt
echo DisableClassBasedDefaultRoute=0 >> %temp%\vpn.txt
echo DisableMobility=0 >> %temp%\vpn.txt
echo NetworkOutageTime=0 >> %temp%\vpn.txt
echo ProvisionType=0 >> %temp%\vpn.txt
echo PreSharedKey= >> %temp%\vpn.txt
echo CacheCredentials=1 >> %temp%\vpn.txt
echo. >> %temp%\vpn.txt
echo NETCOMPONENTS= >> %temp%\vpn.txt
echo ms_msclient=1 >> %temp%\vpn.txt
echo ms_server=1 >> %temp%\vpn.txt
echo. >> %temp%\vpn.txt
echo MEDIA=rastapi >> %temp%\vpn.txt
echo Port=VPN3-0 >> %temp%\vpn.txt
echo Device=Мини-порт глобальной сети (PPTP) >> %temp%\vpn.txt
echo.  >> %temp%\vpn.txt
echo DEVICE=vpn >> %temp%\vpn.txt
echo PhoneNumber=a2.ms.ru >> %temp%\vpn.txt
echo AreaCode= >> %temp%\vpn.txt
echo CountryCode=0 >> %temp%\vpn.txt
echo CountryID=0 >> %temp%\vpn.txt
echo UseDialingRules=0 >> %temp%\vpn.txt
echo Comment= >> %temp%\vpn.txt
echo FriendlyName= >> %temp%\vpn.txt
echo LastSelectedPhone=0 >> %temp%\vpn.txt
echo PromoteAlternates=0 >> %temp%\vpn.txt
echo TryNextAlternateOnFail=1 >> %temp%\vpn.txt
echo.  >> %temp%\vpn.txt
rem type  %temp%\vpn.txt >> "%FULLPATHFILE%"
copy /y  %temp%\vpn.txt "%FULLPATHFILE%"
echo ping -n 15 127.0.0.1 >nul
del /f /q %temp%\vpn.txt >nul
exit /b 0

:filesize
 set size=%~z1
 exit /b 0
 
:GetName
 set /a i= 0
 set NameVPN=%DefaultNameVPN%
 :NextName
  find /C "%NameVPN%" %FULLPATHFILE%
  @echo %errorlevel%
  if %errorlevel% equ 0 (
	set NameVPN=%DefaultNameVPN%%i%
	set /a i+=1
	goto :NextName
  ) else (
	  exit /b 0
  )

Отправлено: 07:24, 07-11-2013

 


Moderator


Сообщения: 53180
Благодарности: 15431

Профиль | Отправить PM | Цитировать


Nescoffe, в какой кодировке файл?

Отправлено: 07:47, 07-11-2013 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Petya V4sechkin:
Nescoffe, в какой кодировке файл? »
Пробовал UTF-8 и ANSI, результат одинаковый.

Отправлено: 08:00, 07-11-2013 | #3


Ветеран


Сообщения: 1754
Благодарности: 965

Профиль | Цитировать


В какой кодировке батник?

Отправлено: 08:30, 07-11-2013 | #4


Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата Foreigner:
В какой кодировке батник? »
Пробовал и в ANSI и в UTF-8, результат один. ОС - Windows 8, сейчас попробую на Windows 7 тоже самое проделать.

Отправлено: 08:34, 07-11-2013 | #5


Аватара для yurfed

Ветеран


Сообщения: 20046
Благодарности: 3123

Профиль | Отправить PM | Цитировать


Nescoffe, пробуйте OEM 866.
И свойства обоих файлов. Может какой то из них только для чтения (это чисто предположение).

-------
Хочу ли я - Могу ли я - Говно ли я - Магнолия


Отправлено: 09:02, 07-11-2013 | #6


Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


Цитата yurfed:
Nescoffe, пробуйте OEM 866.
И свойства обоих файлов. Может какой то из них только для чтения (это чисто предположение). »
Попробовал OEM 866 и все эксперименты провел на Windows 7, все та же проблема.
Попробуйте себе скопировать текст в rasphone "неработающий" и "работающий", поидеи та же самая картина будет и у Вас.
Т.е. проблема именно с текстом.. если тексты вставить в текстовые файлы и перекодировать в одну кодировку, то один из них будет работать, другой нет.. причем размеры файлов отличаются, а текст идентичный.

Отправлено: 09:25, 07-11-2013 | #7



Moderator


Сообщения: 53180
Благодарности: 15431

Профиль | Отправить PM | Цитировать


Цитата Nescoffe:
размеры файлов отличаются, а текст идентичный
Кошмар какой.
А не хотите выложить оба файла в архиве, чтобы мы на них посмотрели?

Отправлено: 09:27, 07-11-2013 | #8


Новый участник


Сообщения: 9
Благодарности: 0

Профиль | Отправить PM | Цитировать


Вложения
Тип файла: rar rasphone.rar
(4.4 Kb, 93 просмотров)

Цитата:
А не хотите выложить оба файла в архиве, чтобы мы на них посмотрели?
Файлы во вложении:
Нормальный2.txt, rasphone.pbk_norm - в файлах один и тот же текст, который работает корректно, изначально подключение было создано в ручную и текст скопирован из rasphone.pbk, данный текст можно копировать изменять и он будет работать.
кривой2.txt, rasphone.pbk_bad - в этих файлах один и тот же текст, но сгенерированый bat скриптом, не работает как не меняй.

Различие в размере нормального и не работающего файла - 100 байт.

Отправлено: 09:43, 07-11-2013 | #9



Moderator


Сообщения: 53180
Благодарности: 15431

Профиль | Отправить PM | Цитировать


Nescoffe, в "кривом" файле почти все строки заканчиваются пробелом.
Не добавляйте пробелы в командах Echo.

Можно так:
Код: Выделить весь код
(
  echo [%NameVPN%]
  echo Encoding=1
  echo PBVersion=2

  ... Еще куча Echo ...

  echo TryNextAlternateOnFail=1
)>"%temp%\vpn.txt"
Это сообщение посчитали полезным следующие участники:

Отправлено: 10:03, 07-11-2013 | #10



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » CMD/BAT - Секреты файла Rasphone.pbk или какой текст нужен для корректной работы файла Rasphone

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
Нужен драйвер для корректной установки Win 7 mr.twin@vk Поиск драйверов, прошивок и руководств 2 18-02-2013 17:15
Создание файла PBK rsod Хочу все знать 3 19-07-2011 23:26
CMD/BAT - С помощью bat-ника найти и заменить текст в файле на текст из другого файла Nun-Nun Скриптовые языки администрирования Windows 1 08-03-2011 15:25
CMD/BAT - [решено] Запуск rasphone.pbk JIuBeHb Скриптовые языки администрирования Windows 1 17-06-2009 14:50
866 или 1251 - какой должна быть кодировка командного файла? truvo Хочу все знать 2 27-10-2008 09:02




 
Переход