Uzun lafın kısası, hangi nedenle olursa olsun, farklı zamanlarda, başarılı bir şekilde yapmak için kimlik doğrulaması için tekrarlanan denemeler gerektiren bir WebDav klasörü dizisini eşlemem gerekiyor.
İşleri kolaylaştırmak için aşağıdaki betiği oluşturdum, yani net use komutunu ilk kez 15 kez kopyalayıp yapıştırmak zorunda kalmıyorum ve ardından 15. kez başarılı bir şekilde bağlanabildiğini umuyorum.
Yapmaya çalıştığım şey ilk defa "normal" bir harita denemektir. Eğer bu işe yaramazsa (ki bileceğiz, çünkü o konumdaki bir klasörün "var" olup olmadığını kontrol eder, ki sürücü başarılı bir şekilde haritalandıysa gerekir), sonra sadece şifreyi yanlış yazmam durumunda kimlik bilgileri istenir bu nadir olmasına rağmen). İdeal olarak, şu anda düz metin olarak göründüğü gibi, yazarken parolayı silebilmek istiyorum.
Ardından, "pword" değişkeninde sakladığım şifreyi kullanarak, başarılı bir şekilde bağlanıncaya kadar değişkende depolanan şifreyi kullanarak konumu tekrar tekrar eşleştirmeye çalışan bir döngüm var.
Şifreyi sadece komut dosyasına koyabileceğimin farkındayım . Bu halka açık bir yerde, bu yüzden komut dosyasındaki kullanıcı adının başlamasını bile istemedim. Şifreyi betiğe koyamıyorum. Şu anda, bir tane sağlanmadığından hesabın şifresini ister. Şifre kullanıcı adından sonra ve / P'den önce gider: anahtar yok, bu sürücünün çalışmamasını sağlar inat seanstan sonra.
Şu anda, bu çalışmıyor (sürpriz değil). Neden olsa anlayamıyorum. Senaryom döngüden geçiyor, ama alıyorum System error 1244 has occurred. The operation being requested was not performed because the user has not been authenticated.
Yani, bir şekilde, etkileşimli olarak manuel olarak değişkene gönderdiğim parola, gerektiği gibi net kullanım anahtarına geçmiyor. Komut satırında doğru şifreyi girip girmeme hatası 1244 hatası alıyorum, bu nedenle bir şekilde değişken aracılığıyla manuel olarak verilen kimlik bilgileriyle bağlantı kurmaya çalışmıyor.
Bunu nasıl düzeltebilirim, böylece kullanıcı girişi *** (yıldızlı) (dışarıdan bir şifre ister, çünkü cmd.exe bunu bilmez). peki, iki kez) ve sonra toplu iş dosyama otomatik olarak HER ÇOK tek seferde sormak yerine bunu şifrenin altına alır. Bu, her giriş yaptığımda 15 kez yapmak can sıkıcı oluyor. Burada yanlış bir şey mi var, yoksa bunu yapmanın daha iyi bir yolu var mı?
net use k: "https://d.docs.live.net/###/Documents/somefolder" /USER:someuser@outlook.com /P:No
if exist "K:\x" GOTO ContinueMapping
echo Windows will try to connect using the following password:
set /p pword=WebDav password:
:BruteConnect
net use k: "https://d.docs.live.net/$$$/Documents/somefolder" /USER:signin.interlinked@outlook.com %pword% /P:No
if exist "K:\x" GOTO ContinueMapping
GOTO BruteConnect
:ContinueMapping
(More drives get mapped here, and they all map successfully once the first drive gets mapped)