সমস্ত সাফ করার জন্য ভিজ্যুয়াল স্টুডিও তাত্ক্ষণিক উইন্ডো কমান্ড


102

ভিজ্যুয়াল স্টুডিওতে তাত্ক্ষণিক উইন্ডোটি সাফ করার জন্য কোনও আদেশ আছে?

আমি সেখানে ডান ক্লিকের মেনুতে মাউসটি ধরতে পছন্দ করি না - বরং "ক্লাস" বা অন্য কিছু টাইপ করতে চাই।


14
ডান ক্লিক মেনু আছে বুঝতে পারিনি!
জনিআআআআআআআআআআআ

উত্তর:


136

অবিলম্বে জানালা সাফ করতে, আপনি ব্যবহার করতে পারেন >cls, যা একটি পূর্বনির্ধারিত হয় কমান্ড ওরফে করতে >Edit.ClearAll

এমএসডিএন নিবন্ধে সমস্ত পূর্বনির্ধারিত উপাধি তালিকাভুক্ত করা হয়েছে এবং আপনি নিজের নিজস্ব সংজ্ঞাও দিতে পারেন। (বনাম 2010 এবং তার আগে জন্য, কাস্টম alias লেখা একটি পৃথক প্রবন্ধে, যদিও বর্ণনা করা হয়।) মাধ্যমে স্ক্যান করা হচ্ছে, তাদের একটি সম্পূর্ণ বধ, এর মধ্যে কয়েকটি এমনকি MS-DOS এর DEBUG.EXE তাদের শিকড় (থাকতে পারে এর বিশেষভাবে >d, >g, >p, >q, এবং> মাথায় tআসা)।


এটি লক্ষণীয়, কারণ এটি টিপতে কেবল দুটি কী রয়েছে: প্রসঙ্গ মেনু> সমস্ত সাফ করুন একই কমান্ডটি চাওয়া হয় এবং এটি কীবোর্ড ব্যবহার করে নেভিগেট করা যায়। অবিলম্বে উইন্ডোতে, আপনি টিপতে পারেন context-menu, L

আপনি যদি একটি না থাকে তাহলে context-menuকী আপনার কীবোর্ডের (আপনি কি জানেন, মধ্যবর্তী এক right-altএবং right-ctrl), আপনি ব্যবহার করতে পারেন shift+ + F10পরিবর্তে।


4
আমি অফিসে থাকাকালীন আমি সাধারণত প্রসঙ্গ কীটি ব্যবহার করি - তবে আমি ক্লায়েন্ট অফিস থেকে গত কয়েকমাস ধরে একটি ল্যাপটপে কাজ করছি, এবং এতে আমার প্রসঙ্গ কী নেই। এটি অবশেষে আমাকে সমাধান খুঁজতে যথেষ্ট বিরক্ত করেছিল ...
স্কট আইভে

4
>গুরুত্বপূর্ণ। উত্তরে এটি আরও সুস্পষ্ট করার কোনও প্রাকৃতিক উপায় সম্পর্কে ভাবতে পারেনি। এছাড়াও আরও দরকারী টিপসের জন্য এমএসডিএন-তে তাত্ক্ষণিক উইন্ডো দেখুন।
প্যালেক 9


17
  1. তাত্ক্ষণিক উইন্ডোতে মাউস কার্সারটি রাখুন।
  2. মাউসে ডান ক্লিক করুন এবং "সমস্ত সাফ করুন" নির্বাচন করুন।


3

রান সময়ে এটি কীভাবে করবেন তা এখানে:

  1. আপনার আবেদনের এনভিডিটিই ডিএলগুলি উল্লেখ করুন।

  2. তৈরি করুন এবং তারপরে প্রয়োজনীয় হিসাবে এই ফাংশনটি ব্যবহার করুন।

Public Sub ClearImmediateWindow()
  Try
    Dim vsWindowKindImmediateWindow As String _ 
          = "{ECB7191A-597B-41F5-9843-03A4CF275DDE}"
    Try
      Dim obj As Object = System.Runtime.InteropServices.Marshal._ 
                          GetActiveObject("VisualStudio.DTE.10.0")
      If obj IsNot Nothing Then
        Dim DTE2 As EnvDTE80.DTE2 = CType(obj, EnvDTE80.DTE2)
        For Each wndw As EnvDTE.Window In DTE2.Windows
          If wndw.ObjectKind = vsWindowKindImmediateWindow Then
            wndw.Activate()
            DTE2.ExecuteCommand("Edit.ClearAll")
            Exit For
          End If
        Next
      End If
    Catch comEx As COMException
      ' Not running from within the VS IDE?
    Catch ex As Exception
      Throw ex
    End Try
  Catch ex As Exception
    ' Handle this as you desire.
  End Try
End Sub
  End Sub

আমার জন্য কাজ করছে না। ত্রুটি: "টাইপ প্রথম সুযোগ ব্যতিক্রম 'System.Runtime.InteropServices.COMException' mscorlib.dll ঘটেছে" যখন মার্শাল থেকে অবজেক্ট পেয়ে।
মোজতাবা রেজাe

আমার ভিসুয়াল স্টুডিও সংস্করণ 2012 তাই আমি পরিবর্তিত হয় VisualStudio.DTE.10.0থেকে VisualStudio.DTE.11.0এবং এটা কাজ করে। এছাড়াও আমি এখানে একই উত্তরের একটি সংক্ষিপ্ত বাক্য গঠন খুঁজে পেয়েছি: http://stackoverflow.com/a/16873888/2721611
মোজতাবা রেজাওয়িয়ান

1

ভিজ্যুয়াল স্টুডিও 2012 এর জন্য আমি ব্যবহার করি:

Public Sub ClearImmediateWindow()
    Dim dte As EnvDTE80.DTE2 = Marshal.GetActiveObject("VisualStudio.DTE.11.0")
    dte.Windows.Item("Immediate Window").Activate() 'Activate Immediate Window  
    dte.ExecuteCommand("Edit.SelectAll")
    dte.ExecuteCommand("Edit.ClearAll")
    Marshal.ReleaseComObject(dte)
End Sub

কোডগুলি থেকে তাত্ক্ষণিক উইন্ডোটি স্বয়ংক্রিয়ভাবে সাফ করতে (প্রকল্পে DTE রেফারেন্স যুক্ত করতে হবে)। যদি কোন কাজ চেষ্টা করবেন VisualStudio.DTE.8.0, VisualStudio.DTE.9.0, ...আপনার ভিজ্যুয়াল স্টুডিও সংস্করণ অনুযায়ী।


0

আমি সর্বশেষ উত্তরটি কেবল ভারব্যাটিম সম্পর্কে ব্যবহার করেছি এবং এটি কাজ করে, যদিও আমি যেখানে ছিল সেখানে ফোকাসটি চেয়েছিলাম। এখানে খুব সামান্য উন্নত সি # সংস্করণ। আমি এটি একটি কনফিগারেশন সুইচ দিয়ে সক্ষম।

#if DEBUG
    if (GetIni("Debug", "ClearImmediateWindow", true)) {
        try {
            var dte = (EnvDTE.DTE) Marshal.GetActiveObject("VisualStudio.DTE.15.0");
            var me  = dte.ActiveWindow;
            dte.Windows.Item("Immediate Window").Activate();
            dte.ExecuteCommand("Edit.ClearAll");
            me.Activate();
        }
        catch { /* Meh! */ }

যদি শেষ


4
শুধু একটা গোটচা; আপনার যদি ভিএস খোলার একাধিক উদাহরণ থাকে তবে মুরফির আইন আদেশ করে যে এটি অন্যটি সাফ করবে এবং এফ ^ & $% ** কেন খুঁজে বের করার চেষ্টা করবে! এটা কাজ করে না। কমপক্ষে আমি গত 20 মিনিট ধরে এটি করছি।
লুক ভিডিভি

এবং এখন এটি কাজ করে তবে আমি মনে করি কেবল ভিএস সক্রিয় উইন্ডো হলে। যদি এই কোডটি কার্যকর করা হয় তখন অন্য উইন্ডো (উদাহরণস্বরূপ প্রকল্পটি আমি ডিবাগ করছি) যদি সক্রিয় থাকে তবে আমি "HRE صلاحT: 0x80010001 (RPC_E_CALL_REJECTED) থেকে ব্যতিক্রম পাই"।
লুক ভিডিভি

তুমি ঠিক বলছো. আপনি যদি 2 টি দৃষ্টান্ত চালাচ্ছেন তবে অন্যটির থেকে একজনকে বলার জন্য আপনাকে যৌক্তিক উপায়ে কাজ করতে হবে। আমি ভাবছি আপনাকে সমস্ত প্রধান উইন্ডো পুনরাবৃত্তি করতে হবে এবং সর্বোচ্চ জেডআর্ডার সহ একটিতে পরীক্ষা করতে হবে। আমি এটি ব্যবহার করা কিছুদিন আগে ছেড়ে দিয়েছি কারণ আমি আরও ভাল উপায় নিয়ে এসেছি। আমি এটি লিখেছিলাম কারণ ভিজ্যুয়াল স্টুডিও ডিবাগ বার্তাটি চুরি করে। অন্যান্য সমস্ত সরঞ্জামের জন্য আমি এগুলিকে ডিবিজিভিউ (সিসি ইন্টার্নালালস) এর মাধ্যমে চালিত করি। আমি একটি ব্যাক এন্ড প্রক্রিয়া লিখেছিলাম যা ভিজ্যুয়াল স্টুডিওগুলি তাদের চুরি করার আগে এগুলি ক্যাপচার করে, এবং সেগুলি ডিবিজিভিউতে ফরোয়ার্ড করে, তাই আমি প্রথমে যা চেয়েছিলাম তা ফিরে পেয়েছি।
ওয়েড হ্যাটলার
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.