سؤال

أعرف موضوع موجود بالفعل من هذا القبيل ولكني لا أريد استخدام برنامج نصي VB.

آمل أن تتمكن من إنشاء اختصار باستخدام سطر الأوامر في DOS.

يرجى نشر بعض المثال سيكون رائعا.

شكرا!

أرا

هل كانت مفيدة؟

المحلول

إنشاء اختصار في .lnk. الشكل مستحيل بشكل أساسي من ملف دفعي دون استدعاء برنامج خارجي من نوعه. يمكن العثور على مواصفات الملف هنا, ، وسوف يفسر غلاف سريع.

خلق شيء .url. شكل اختصار سهل للغاية مثل التنسيق هو ملف نصي بسيط. يمكن العثور على المواصة هنا. وبعد هذا التنسيق لديه عدد قليل من العيوب, ، ولكن قد ينجز هدفك.

نصائح أخرى

لا يمكنك إنشاء اختصار في ملف .bat دون استدعاء برنامج خارجي.

ومع ذلك، فإن كل إصدار من Windows منذ WIN2K لديه لغة مدمجة تسمى يستضيف Windows Script.

إليك نص شبكة WSH الصغيرة التي كتبتها قبل بضع سنوات يمكن استدعاؤها من ملف .bat، فقط احفظ هذا النص كما shortcut.wsf., ، يحتوي على معلومات USEIGE في البرنامج النصي.

<package>
 <job id="MakeShortcut">
  <runtime>
   <description>Create a shortcut (.lnk) file.</description>
   <named
     name = "Target"
     helpstring = "the target script"
     type = "string"
     required = "true"
   />
   <named
     name = "Args"
     helpstring = "arguments to pass to the script"
     type = "string"
     required = "false"
   />
   <unnamed
     name = "basename"
     helpstring = "basename of the lnk file to create"
     type = "string"
     required = "false"
   />
  </runtime>

  <script language="JScript">

   if ( ! WScript.Arguments.Named.Exists("Target"))
   {
      WScript.Arguments.ShowUsage();
      WScript.Quit(2);
   }

   target = WScript.Arguments.Named.Item("Target");
   WScript.Echo("target " + target);
   args   = WScript.Arguments.Named.Item("Args");
   WScript.Echo("args " + args);
   base = WScript.Arguments.Unnamed.Item(0);
   WScript.Echo("base " + base);

   fso   = WScript.CreateObject("Scripting.FileSystemObject");
   //path  = fso.GetParentFolderName(WScript.ScriptFullName);
   path  = fso.GetAbsolutePathName(".");
   WScript.Echo("path = " + path);
   Shell = WScript.CreateObject("WScript.Shell");

   short = fso.BuildPath(path,base);
   if ( ! fso.GetExtensionName(base))
      short = short + ".lnk";

   link  = Shell.CreateShortcut(short);
   link.TargetPath   = fso.BuildPath(path, target);
   if (args != null && args != "")
      link.Arguments = args;
   else
      link.Arguments = base;
   //link.Description = "Sound Forge script link";
   //link.HotKey = "ALT+CTRL+F";
   //link.IconLocation = fso.BuildPath(path, target) + ", 2";
   //link.WindowStyle = "1"
   //link.WorkingDirectory = path;
   link.Save();

  </script>
 </job>
</package>

تشغيله دون أي حجج للحصول على useage

c:\> shortcut.wsf
Microsoft (R) Windows Script Host Version 5.6
Copyright (C) Microsoft Corporation 1996-2001. All rights reserved.

Create a shortcut (.lnk) file.
Usage: shortcut.wsf /Target:value [/Args:value] [basename]

Options:

Target   : the target script
Args     : arguments to pass to the script
basename : basename of the lnk file to create

يمكنك الحصول shortcut.exe. من مجموعة الموارد.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top