मैं एक दूरस्थ डेस्कटॉप कनेक्शन का शॉर्टकट कैसे बनाऊं और पासवर्ड शामिल करूं?


13

मैं शॉर्टकट से सीधे एक दूरस्थ डेस्कटॉप कनेक्शन खोलना चाहता हूं, और मैं शॉर्टकट के भीतर उपयोगकर्ता नाम पासवर्ड एम्बेड करना चाहता हूं।

मुझे RDP शॉर्टकट से दूरस्थ डेस्कटॉप का रास्ता कैसे मिलता है, और क्या हम RDP शॉर्टकट में पासवर्ड सेट कर सकते हैं?


उत्तर में चरणों में उपलब्ध है: stackoverflow.com/a/40017890/4361073
पैराक्रिस

जवाबों:


12

RDP फ़ाइल को सहेजते समय, मेरा पासवर्ड सहेजें चेकबॉक्स देखें। यह आपके पासवर्ड को .RDPएन्क्रिप्टेड फॉर्मेट में फाइल में सेव करेगा । हालांकि सावधान रहें, क्योंकि लोगों को पता चला है कि इसे कैसे डिक्रिप्ट करना है :

वैकल्पिक शब्द


नोट पैड में RDP फ़ाइल खोलने के लिए मैन्युअल रूप से पासवर्ड कैसे जोड़ें
धातु गियर ठोस

यह MSTSC v6 के साथ अब कोई समस्या नहीं है - क्रेडेंशियल सिस्टम पर कहीं और संग्रहीत किए जाते हैं (स्थानीय सेटिंग्स \ Application Data \ Microsoft \ Credentials), और जहाँ तक मुझे पता है, वे उपयोगकर्ता के लॉगिन पासवर्ड के साथ एन्क्रिप्टेड हैं।
user1686

मेरे पास पहले से ही आरडीपी फ़ाइल है। मैं संपादित करने के लिए फ़ाइल और डालने पासवर्ड चाहते हैं
धातु गियर ठोस

@ जितेंद्र फ़ाइल को एक एन्क्रिप्टेड प्रारूप में संग्रहीत करता है, यह इसे खोलने और टाइप करने जितना सरल नहीं है password:abc123। यदि आप उन्हें उस प्रारूप में एन्क्रिप्ट करने के लिए एक उपकरण पा सकते हैं तो आप कर सकते हैं, लेकिन मुझे संदेह है कि कोई ऐसा उपकरण बनाने से परेशान होगा।
जॉन टी

विंडोज 7 में पासवर्ड दर्ज / सेव करने का कोई विकल्प नहीं है। क्या आप मदद कर सकते हैं?
डिजिटुगी

5

सीधे .rdp फ़ाइलों को संपादित करने का प्रयास करें। मुझे एक लेख मिला, कैसे rdp पासवर्ड एन्क्रिप्ट किए जाते हैं , कह रहे हैं कि कैसे, और गहरी नीचे, पदों में, सी # में यह कैसे करें के लिए कुछ कोड है:

using System;
using System.Collections.Generic;
using System.Runtime.InteropServices;
using System.ComponentModel;
using System.Security.Cryptography;
using System.Linq;
using System.Text;

class Mstscpw
{
    private const int CRYPTPROTECT_UI_FORBIDDEN = 0x1;
    // Wrapper for the NULL handle or pointer.
    static private IntPtr NullPtr = ((IntPtr)((int)(0)));
    // Wrapper for DPAPI CryptProtectData function.
    [DllImport("crypt32.dll", SetLastError = true,
    CharSet = System.Runtime.InteropServices.CharSet.Auto)]
    private static extern bool CryptProtectData(
    ref DATA_BLOB pPlainText,
    [MarshalAs(UnmanagedType.LPWStr)]string szDescription,
    IntPtr pEntroy,
    IntPtr pReserved,
    IntPtr pPrompt,
    int dwFlags,
    ref DATA_BLOB pCipherText);
    // BLOB structure used to pass data to DPAPI functions.
    [StructLayout(LayoutKind.Sequential, CharSet = CharSet.Unicode)]
    internal struct DATA_BLOB
    {
        public int cbData;
        public IntPtr pbData;
    }

    private static void InitBLOB(byte[] data, ref DATA_BLOB blob)
    {
        blob.pbData = Marshal.AllocHGlobal(data.Length);
        if (blob.pbData == IntPtr.Zero)
            throw new Exception("Unable to allocate buffer for BLOB data.");

        blob.cbData = data.Length;
        Marshal.Copy(data, 0, blob.pbData, data.Length);
    }

    public string encryptpw(string pw)
    {
        byte[] pwba = Encoding.Unicode.GetBytes(pw);
        DATA_BLOB dataIn = new DATA_BLOB();
        DATA_BLOB dataOut = new DATA_BLOB();
        StringBuilder epwsb = new StringBuilder();
        try
        {
            try
            {
                InitBLOB(pwba, ref dataIn);
            }
            catch (Exception ex)
            {
                throw new Exception("Cannot initialize dataIn BLOB.", ex);
            }

            bool success = CryptProtectData(
            ref dataIn,
            "psw",
            NullPtr,
            NullPtr,
            NullPtr,
            CRYPTPROTECT_UI_FORBIDDEN,
            ref dataOut);

            if (!success)
            {
                int errCode = Marshal.GetLastWin32Error();
                throw new Exception("CryptProtectData failed.", new Win32Exception(errCode));
            }

            byte[] epwba = new byte[dataOut.cbData];
            Marshal.Copy(dataOut.pbData, epwba, 0, dataOut.cbData);
            // Convert hex data to hex characters (suitable for a string)
            for (int i = 0; i < dataOut.cbData; i++)
                epwsb.Append(Convert.ToString(epwba[i], 16).PadLeft(2, '0').ToUpper());
        }
        catch (Exception ex)
        {
            throw new Exception("unable to encrypt data.", ex);
        }
        finally
        {
            if (dataIn.pbData != IntPtr.Zero)
                Marshal.FreeHGlobal(dataIn.pbData);

            if (dataOut.pbData != IntPtr.Zero)
                Marshal.FreeHGlobal(dataOut.pbData);
        }
        return epwsb.ToString();
    }
}
// Test code:
class program
{
    static void Main(string[] args)
    {
        Mstscpw mstscpw = new Mstscpw();
        string epw = mstscpw.encryptpw("password");
        Console.WriteLine("Encrypted password for \"password\" {0} characters: \r\n{1}", epw.Length, epw);
        Console.ReadLine();
    }
}


0

ठीक है, आंशिक रूप से सही, आप वास्तव में Microsoft क्रेडेंशियल्स को आसानी से संपादित नहीं कर सकते हैं, और कमांड नहीं है rdp, लेकिन यदि आप कमांड चलाते हैं तो mstscयह WinXP पर 'सेव पासवर्ड' समस्या को ठीक करेगा।

रिमोट डेस्कटॉप वाया कमांडलाइन तक पहुंचें

mstsc [<connection file>] [/v:<server[:port]>] [/admin] [/f[ullscreen]] [/w:<width>] [/h:<height>] [/public] | [/span] [/edit "connection file"] [/migrate] [/?]

बस एक सीएमडी विंडो खोलें, टाइप करें mstsc, पीसी नाम या आईपी में डालें, विकल्प पर क्लिक करें, और अपने मैरे रास्ते पर जाएं, लेकिन एक सहेजें के रूप में करें ... इसलिए आपके पास बाद के लिए काम करने का शॉर्टकट है।


0

वैकल्पिक रूप से निम्नलिखित पंक्तियों के साथ एक बैच स्क्रिप्ट (.bat) बनाएं:

cmdkey /generic:"computername or IP" /user:"username" /pass:"password" mstsc /v:"computer name or IP"

नोट मान्य क्रेडेंशियल्स के साथ स्क्रिप्ट में आईपी, उपयोगकर्ता नाम और पासवर्ड को बदलें।

अब स्क्रिप्ट पर डबल क्लिक करके चलाएं।

यह काम।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.