আমি কীভাবে কোনও উইন্ডোজ শর্টকাটটির পথ আপডেট করা থেকে বিরত করব?


24

আমার পণ্য বিকাশকালে, আমার পরীক্ষার ডিভাইসে একই সাথে অ্যাপ্লিকেশনটির কয়েকটি সংস্করণ ইনস্টল করা আছে। যাইহোক, আমার অ্যাপ্লিকেশনটি কাজ করার জন্য নিখুঁত পাথগুলি পেতে, আমাকে ফোল্ডারগুলি স্যুইচ বা পুনরায় নামকরণ করতে হবে যাতে আমি যে সংস্করণটি পরীক্ষা করতে চাই তার সঠিক পথ থাকতে পারে, বলুন C:\Program Files\My Company\My App\My App.exe। আমি একটি শর্টকাট তৈরি করেছি যা এই পথটিকে টার্গেট করে, তবে যদি এই শর্টকাটটি খোলা থাকে যখন বর্তমানে সংস্করণগুলির কোনওটির কাছে সেই পাথ নেই, তবে ফাইলটি স্থায়ীভাবে চলে গেছে ভেবে শর্টকাটটি স্বয়ংক্রিয়ভাবে নিজেকে আপডেট হবে। যা ঘটছে তা আবিষ্কার না করা পর্যন্ত এটি নীরব ব্যর্থতা তৈরি করেছিল। আমি জানতাম না যে এটি এখন পর্যন্ত উইন্ডোজ শর্টকাটের একটি বৈশিষ্ট্য।

আমার প্রশ্ন তাই সহজ। এই বৈশিষ্ট্যটি বন্ধ করার কোনও উপায় আছে কি? বিশ্বব্যাপী ভাল তবে প্রতি-শর্টকাট সমাধান আরও ভাল হবে।

একটি শর্টকাটের পরিবর্তে ব্যাচ ফাইল ব্যবহার করা একটি সমাধান, তবে আমি ভাবছি শর্টকাট ব্যবহার করার পরেও এই কাজটি করার কোনও উপায় আছে কিনা।

আমি উইন্ডোজ 10 হোম এবং উইন্ডোজ 7 হোম ব্যবহার করছি।


10
আমি অতীতে যা করেছি তা হ'ল .batএকটি সাধারণ কমান্ড সহ ব্যাচ ফাইল ( ) ব্যবহার করুন start "" "C:\path\to\file.exe"
বব

1
আপনি কি mklinkপরিবর্তে কোনও .lnkফাইলের পরিবর্তে একটি প্রতীকী লিঙ্ক ( কমান্ড ব্যবহার করে ) তৈরি করার চেষ্টা করেছেন ? বা সেগুলিও আপডেট হয়?
জ্যাব

1
@ জ্যাব সিমলিংকগুলি আপডেট করা উচিত নয়, তবে তার কিছু অসুবিধা রয়েছে (অ্যাডমিন প্রাইভস প্রয়োজন, যুক্তি পাস করতে পারে না ইত্যাদি)। যদিও এগুলি যদি সমস্যা না হয় তবে তারা ভাল কাজ করে।
বব

3
আমি ভেবেছিলাম শর্টকাটটি কেবলমাত্র পঠনযোগ্যভাবে তৈরি করা কাজ করবে (আমি নিশ্চিত এটি ব্যবহার করতাম) তবে পরীক্ষা করে দেখেছি যে এটি ব্যবহার করে না। কারণ শর্টকাটটি আবার লেখা হয়নি; শর্টকাট চালানোর সময় লক্ষ্যটি পাওয়া যায়। ঠিক তাই অন্য কেউ চেষ্টা করে না।
ক্রিস এইচ

1
@ পেটসারল যেমন আমি উপরে বলেছি, এটি কাজ করে না।
ক্রিস এইচ

উত্তর:


13

আপনি পাওয়ারশেল ব্যবহার করতে পারেন! এই ছোট স্ক্রিপ্টটি ক্লাসিক shortcutইউটিলিটিটি ব্যবহার করার মতো একই প্রভাব তৈরি করতে LNK ফাইলটিকে তাকাচ্ছে ।

$linkfile = Resolve-Path $args[0]
$bytes = [IO.File]::ReadAllBytes($linkfile)
$bytes[0x16] = $bytes[0x16] -bor 0x36
[IO.File]::WriteAllBytes($linkfile, $bytes)

এটি ব্যবহার করতে, যেমন পাঠ্যটি .ps1ফাইল হিসাবে সংরক্ষণ করুন notrack.ps1। যদি আপনি ইতিমধ্যে না থাকেন তবে পাওয়ারশেল ট্যাগ উইকির স্ক্রিপ্টগুলি সক্ষম করতে বিভাগের নির্দেশাবলী অনুসরণ করুন । তারপরে আপনি এটিকে পাওয়ারশেল প্রম্পট থেকে চালাতে পারেন:

.\notrack.ps1 C:\path\to\my\shortcut.lnk

এইভাবে টুইট করা শর্টকাটগুলি তাদের টার্গেটটি চললে পরিবর্তিত হবে না। যদি এর মতো শর্টকাটটি ভেঙে যায়, আপনি যখন এটি খোলার চেষ্টা করবেন তখন কিছুই হবে না।

আমি আমার স্ক্রিপ্টে ব্যবহৃত বাইনারি গণিতটি এই 48-পৃষ্ঠার মাইক্রোসফ্ট পিডিএফ থেকে এলএনকে ফর্ম্যাটে সংগ্রহ করেছি


25

পরিষেবাটি বন্ধ করুন এবং অক্ষম করুন: বিতরণকৃত লিংক ট্র্যাকিং ক্লায়েন্ট (ট্রেকডব্লক্স)।

বিতরণকৃত লিঙ্ক ট্র্যাকিং এমন পরিস্থিতিতেগুলিতে লিঙ্কগুলি ট্র্যাক করে যেখানে এনটিএফএস ভলিউমের কোনও ফাইলটিতে লিঙ্কটি তৈরি করা হয়, যেমন শেল শর্টকাট। যদি সেই ফাইলটির নাম পরিবর্তন করা হয়, একই কম্পিউটারে অন্য ভলিউমে সরানো হয়েছে, অন্য কম্পিউটারে সরানো হয়েছে, বা অন্যান্য অনুরূপ পরিস্থিতিতে সরানো হয়েছে, উইন্ডোজ ফাইলটি খুঁজে পেতে বিতরণকারী লিঙ্ক ট্র্যাকিং ব্যবহার করে।

উত্স: বিতরণ লিংক ট্র্যাকিং - মাইক্রোসফ্ট সমর্থন


ভাল ধারণা, কিন্তু লক্ষণীয়ভাবে এটি কাজ করে না। পথটি একটি ডিরেক্টরি দীর্ঘ থাকলেও শর্টকাটটি ফাইলটি খুঁজে পেয়েছিল।
কাইল

আপনি কি নিশ্চিত যে পরিষেবাটি বন্ধ হয়ে গেছে? ডিএলটিসি পরিষেবা বন্ধ করার পরে, আমি চালানো বা এক্সিকিউটেবলের নতুন নামকরণ করেছি। আমি যখন শর্টকাটটি চালালাম তখন লক্ষ্যটি অনুপস্থিত এবং শর্টকাটটি মোছার অনুরোধ জানিয়ে একটি "শর্টকাট সহ সমস্যা" পেয়েছি error
স্টিভেন

10
"সঠিক টার্গেটটি সন্ধান করুন" কার্যকারিতা উইন্ডোজ 9 এক্স সিরিজের সাথে সম্পর্কিত এবং উইন্ডোজের এনটি সংস্করণগুলির পূর্বাভাস দেয়। উইন্ডোজ 9x এ ডিএলটি উপস্থিত ছিল না। এটি DLT অপ্রাসঙ্গিক বলে না; উইন্ডোজ ডিএলটি ব্যবহার করবে যদি এটি শর্টকাট লক্ষ্য খুঁজতে সহায়তা করে।
এমসাল্টারস

2
@ স্টিভেন হ্যাঁ, আমি নিশ্চিত যে পরিষেবাটি বন্ধ আছে। উইন্ডোজ 10-এ, আমি পরিষেবাগুলিতে গিয়েছি, বিতরণযুক্ত লিঙ্ক ট্র্যাকিং ক্লায়েন্ট পেয়েছি, স্টপ বোতামটি ক্লিক করেছি, আমার কম্পিউটারটি পুনরায় চালু করেছি এবং আবার পরিষেবাটি পরীক্ষা করেছি। এখানে একটি স্টার্ট বোতাম আছে এবং পরিষেবাটি চলমান বলে না। শর্টকাটগুলি এখনও তাদের আপডেট করে।
কাইল ডেলানী

8

shortcut.exeকমান্ড অপশনটি ব্যবহার করুন -s:

shortcut: [-? -h -f -c -r -s] [[-t] target [[-n] name]] [-d working directory]
        [-a Arguments] [-i Iconfile] [-x Icon index] [-u {all|[natdix]}]
        [-l logfile]

  -? -h        This help
  -f           Force overwrite of an existing short cut
  -c           Change existing shortcut
  -s           Make shortcut non tracking (Stupid)
  -r           Resolve broken shortcut
  -t target    Specifies the target of the shortcut
  -n name      Specifies the file name of the shortcut file
  -d directory Specifies the directory name to start the application in
  -a arguments Specifies the arguments passed when the shortcut is used
  -i iconfile  Specifiles the file the icon is in
  -x index     Specifies the index into the icon file
  -u [spec]    Dumps the contents of a shortcut. 'all' is the same as 'natdix'
               but the letters of 'natdix' can be specified to display specific
               fields in the shortcut (repeats allowed, and order followed)
  -l logfile   record error messages in specified file

4
দুঃখের বিষয়, শর্টকাট.এক্সজি আর সহজেই উপলভ্য নয়।
ড্যানিয়েল বি

@ ড্যানিয়েলবি আপনি ঠিক বলেছেন, আমি ভুলে গিয়েছি যে আমি উইন্ডোজের কয়েকটি সংস্করণে শর্টকাট.এক্স.কে উদ্ধার করেছি।
সানজি

2
@ ড্যানিয়েল আপনি কি জানেন উইন্ডোজের কোন সংস্করণ রয়েছে? এটি কিছু লোকের পক্ষে কার্যকর হতে পারে।
gronostaj


4

আপনি নিম্নলিখিত GPO সক্ষম করতে পারেন:

ব্যবহারকারীর কনফিগারেশন \ প্রশাসনিক টেম্পলেটগুলি \ স্টার্ট মেনু এবং টাস্কবার shell শেল শর্টকাটগুলি সমাধান করার সময় অনুসন্ধান-ভিত্তিক পদ্ধতিটি ব্যবহার করবেন না

সম্পর্কিত রেজিস্ট্রি কী: HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoResolveSearch

ব্যবহারকারীর কনফিগারেশন \ প্রশাসনিক টেম্পলেটগুলি \ স্টার্ট মেনু এবং টাস্কবার shell শেল শর্টকাটগুলি সমাধান করার সময় ট্র্যাকিং-ভিত্তিক পদ্ধতিটি ব্যবহার করবেন না

সম্পর্কিত রেজিস্ট্রি কী:

HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\NoResolveTrack

ব্যবহারকারী কনফিগারেশন \ প্রশাসনিক টেম্পলেটগুলি \ উইন্ডোজ উপাদানসমূহ Comp ফাইল এক্সপ্লোরার ro রোমিংয়ের সময় শেল শর্টকাটগুলি ট্র্যাক করবেন না

সম্পর্কিত রেজিস্ট্রি কী: HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\Explorer\LinkResolveIgnoreLinkInfo


আমি কীভাবে জিপিও সক্ষম করব? আমি কোথায় ব্যবহারকারী কনফিগারেশন পাই?
কাইল ডেলাানি 14

উইন্ডোজ 10 এ আপনি স্টার্ট বোতামটিতে ডান ক্লিক করতে পারেন -> চালান এবং লিখুন: gpedit.msc -> ঠিক আছে ক্লিক করুন, তারপরে আপনি ব্যবহারকারী কনফিগারেশন ইত্যাদি খুঁজে পেতে সক্ষম হবেন ... অথবা আপনি যে রেজিস্ট্রি কীগুলি নির্দিষ্ট করেছেন তা তৈরি করতে পারেন ( টাইপ করুন: 1
টির

আমি একটি ত্রুটি পেয়েছি। উইন্ডোজ gpedit.msc খুঁজে পেল না।
কাইল ডেলানিতে

ঠিক আছে, সুতরাং আপনাকে অবশ্যই রেজিস্ট্রিতে কীগুলি তৈরি করতে হবে। আপনি কীভাবে এটি করতে জানেন তা না হলে, আমি একটি .reg ফাইল তৈরি করেছিলাম যা আপনি আমদানি করতে পারেন: পেস্টবিন.com / কেডিপিওয়াইএফএফ কেবলমাত্র একটি নতুন ফাইলে সামগ্রীটি অনুলিপি-পেস্ট করুন যা অবশ্যই ".reg" এক্সটেনশনের সাথে শেষ হওয়া উচিত (নয়)। txt) এবং এটিতে ডাবল ক্লিক করুন
সুইসস্টোন

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