কীভাবে ভিজ্যুয়াল স্টুডিও এক্সটেনশনগুলি ডিবাগ করা যায়


93

আমি কেবল ভিজ্যুয়াল স্টুডিও 2010 এর জন্য একটি ভিএসআইএক্স এক্সটেনশন লিখছি এবং কীভাবে এটি ডিবাগ করা যায় তা বুঝতে পারি না।

একটি সুস্পষ্ট পদ্ধতি হ'ল বার্তা আউটপুট। এক্সটেনশন টেম্পলেট ব্যবহার করে Trace.WriteLine()। তবে এটি কোথায় পাওয়া যাবে?

উত্তর:


185

ভিজ্যুয়াল স্টুডিও এক্সটেনশানগুলি অন্য কোনও অ্যাপ্লিকেশনের মতোই ডিবাগ করা যেতে পারে। লোড হওয়া এক্সটেনশান দিয়ে দেবেনভ চালু করতে আপনাকে কেবলমাত্র ডিবাগ অভিজ্ঞতা সেটআপ করতে হবে। নিম্নলিখিত চেষ্টা করুন

  • প্রকল্পে ডান ক্লিক করুন এবং বৈশিষ্ট্য নির্বাচন করুন
  • ডিবাগ ট্যাবে যান

জন্য রেডিও বোতামে ক্লিক করুন Start External Program। এটি devenv.exe বাইনারি দিকে নির্দেশ করুন। আমার মেশিনে এটি অবস্থিত

সি: \ প্রোগ্রাম ফাইল (x86) \ মাইক্রোসফ্ট ভিজ্যুয়াল স্টুডিও 10.0 \ প্রচলিত 7 \ আইডিই \ devenv.exe

নন x64 মেশিনে যদিও আপনি "(x86)" অংশটি সরাতে পারেন।

তারপরে কমান্ড লাইন আর্গুমেন্ট সেট করুন /rootsuffix Exp। এটি ভিজ্যুয়াল স্টুডিওকে সাধারণ কনফিগারেশন মুরগীর পরিবর্তে পরীক্ষামূলক মাতাল ব্যবহার করতে বলে। ডিফল্টরূপে ভিএসআইএক্স এক্সটেনশানগুলি নির্মিত হলে পরীক্ষামূলক মাত্রে তাদের নিবন্ধন করবে।

এখন আপনি এফ 5 করতে পারবেন এবং এটি উপলব্ধ এক্সটেনশন হিসাবে আপনার ভিএসআইএক্সের সাথে ভিজ্যুয়াল স্টুডিও শুরু করবে।


এই উত্তরের জন্য আপনাকে ধন্যবাদ, এক হিট মধ্যে একটি সমস্যা সমাধান। অনেক কৃতজ্ঞ!
রিচার্ড গ্রিফিথস

@ জারেডপার - vs2015 পূর্বরূপের পরীক্ষামূলক মধুযুগে নিজেকে নিবন্ধিত করার জন্য vs2012 এক্সটেনশানটি বলার উপায় আছে কি?
শ্রীকান্ত ভেনুগোপালান

4
দেখে মনে হচ্ছে এটি কেবল তখনই কাজ করে যদি আপনি ডিবাগ করতে এবং পরীক্ষার জন্য যে সংস্করণগুলি ব্যবহার করেন সেগুলি একই হয়। তুমি কি 2013 সালে ডিবাগ এবং 2015. @SrikanthVenugopalan ইন এক্সটেনশান চালাতে পারেন তাই
মারিয়া ইনেস Parnisari

@ মিম্পর্ণিসারি - হ্যাঁ, তাই বলে মনে হচ্ছে। যদিও আপনি একাধিক সংস্করণ সমর্থন করছেন একটি ব্যথা ধরনের।
শ্রীকান্ত ভেনুগোপালন

4
হাই, আপনার অর্থ কী এটি আমার ভিএসআইএক্সের সাথে "উপলব্ধ এক্সটেনশন" হিসাবে ভিএস শুরু করবে? আমি উপলব্ধ এক্সটেনশনগুলি কোথায় পাই? আমি যখন সরঞ্জামগুলিতে যাই -> এক্সটেনশান এবং আপডেটে যাই, আমি কেবল "ইনস্টলড", "অনলাইন" এবং "আপডেট" দেখতে পাই see
pabram

54

@ জ্যারেডপাড়ের গৃহীত উত্তরটি প্রযুক্তিগতভাবে সঠিক, তবে আপনি প্রতিটি বিকাশকারীকে, কোডের একটি নতুন কপি পেয়ে গেলে এবং যে কোনও সময় csproj.userফাইলটি মুছলে মুছে ফেলা দরকার তা ভোগেন । আপনি যখন সেভাবে করেন, সেটিংস csproj.userফাইলটিতে সংরক্ষণ করা হয় ।

একটি আরও ভাল বিকল্প হ'ল সেটিংসটি csprojফাইলটিতে রাখা যাতে সেগুলি না যায়। দুর্ভাগ্যক্রমে, ভিজ্যুয়াল স্টুডিও আপনাকে এটি স্বয়ংক্রিয়ভাবে করার অনুমতি দেয় না, তাই আপনাকে ম্যানুয়ালি সেটিংস যুক্ত করতে হবে। ভাগ্যক্রমে, কোনও প্রকল্পের জন্য সেটিংস একই are

প্রকল্পটি ডান-ক্লিক করুন এবং আনলোড করুন, তারপরে আবার ডান ক্লিক করুন এবং csprojপ্রকল্পের ফাইল ফাইলটি সম্পাদনা করুন। এক্সএমএলে, প্রথমটিতে নিম্নলিখিতগুলি যুক্ত করুন PropertyGroup, উদাহরণস্বরূপ ঠিক পরে TargetFramework

<StartAction>Program</StartAction>
<StartProgram>$(DevEnvDir)\devenv.exe</StartProgram>
<StartArguments>/rootsuffix Exp</StartArguments>

এর নিম্নলিখিত সুবিধা রয়েছে;

  • এটি এটি ডিবাগ এবং প্রকাশের জন্য সেট আপ করে
  • আপনি বর্তমানে চালাচ্ছেন ভিজ্যুয়াল স্টুডিওর যে কোনও সংস্করণ এটি চালায়
  • এটি উত্স নিয়ন্ত্রণে চেক করা আছে, সুতরাং প্রতিটি বিকাশকারী এটি কীভাবে করবেন তা মনে রাখতে হবে না :)

@ এমবুলি মন্তব্যগুলিতে যেমন বলেছেন যে আপনি যদি স্বীকৃত উত্তরে পরিবর্তনগুলি করে থাকেন তবে আপনার *.csproj.userফাইলটি মুছুন কারণ এতে থাকা সেটিংসটি আপনাকে মূল csprojফাইলটিতে যুক্ত হওয়াগুলিকে ওভাররাইড করবে ।


6
* .Csproj.user ফাইলটি মুছে ফেলার বিষয়টি নিশ্চিত করুন কারণ প্রকল্পের সেটিংসের চেয়ে ব্যবহারকারীর সেটিংসে অগ্রাধিকার রয়েছে।
এমবিউল্লি

দুর্দান্ত উত্তর, ধন্যবাদ! গৃহীত একজনের চেয়ে অনেক বেশি দক্ষ।
Zverev Evgeniy

বনাম 2019 এর জন্য পুরোপুরি কাজ করেছেন
x0n

2

OutputWindowHelper.OutputString 'সাধারণ' আউটপুট উইন্ডো ফলকে করুন (Ctrl Alt কী ণ) এর পদ্ধতি লিখেছেন। আমি 2013 এ এটি পেতে আমার .csproj রেফারেন্সগুলিতে এই লাইনটি যুক্ত করেছি

<Reference Include="Microsoft.VisualStudio.Services.Integration, Version=12.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL" />

আরো দেখুন এই উত্তর


দ্রষ্টব্য আউটপুট উইন্ডোহেল্পার ভিজ্যুয়াল স্টুডিও 2015-তে বিদ্যমান নেই only আরও দেখুন github.com/landofjoe/NuspecPackager/issues/1
সরকারের আর্থিক সাহায্যপুষ্ট আধা-সরকারি সংস্থা

0

আপনি যদি একটি UnitTestExtension ডিবাগ করার চেষ্টা, তাহলে আপনি vstest করার ডিবাগার সংযুক্ত করা উচিত নয়। *। Descibed মত EXE প্রসেস এখানে । অন্যথায় আপনি অ্যাক্টিভেট ব্রেকপয়েন্ট দেখতে পাচ্ছেন তবে ডিবাগারটি এটি কখনও আঘাত করতে পারে না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.