02-10-12, 11:01 AM
كاتب الموضوع : magicsword
السلام عليكم ورحمة الله وبركاتة:اولا احب ان اهنئكم و اهنئ الامة الاسلامية بشهر رمضان الكريم اعادة الله علينا بالخير و اليمن البركات.
اليوم, سوف نتعلم سويا كيفية التعامل مع اختصارات الملفات Shortcuts من حيث صنع الاختصارات و معرفة خصائصها.
هناك طرق كثيرة للتعامل مع اختصارات الملفات, اسهل طريقة هي استخدام COM Component وهو Windows Script Host component -وهو جزء من نظام التشغيل- الذي يوفر هذة الوظيفة WshShell.CreateShortcut.
سنبدا باستخدام WshShell , بسم الله:
اولا سنبدا باضافة Reference الى هذا COM Component, من قائمة Project نختار Add Reference ومن COM Tab ثم نختار Windows Script Host Object Model
سنتخدم الكود التالي لعمل اختصار لملف:
1. تحديد الفولدر الذي سوف يتم عمل ال Shortcut بداخلة
كود :
[color=#000000][COLOR=#0000bb]Dim DesktopDir [/color][color=#007700]As [/color][color=#0000bb]String [/color][color=#007700]= [/color][color=#0000bb]Environment[/color][color=#007700].[/color][color=#0000bb]GetFolderPath[/color][color=#007700]([/color][color=#0000bb]Environment[/color][color=#007700].[/color][color=#0000bb]SpecialFolder[/color][color=#007700].[/color][color=#0000bb]Desktop[/color][COLOR=#007700])
[/COLOR][color=#0000bb][/color][/COLOR]
2. عمل Objects
كود :
[color=#000000][COLOR=#0000bb] Dim WshShell [/color][color=#007700]As New [/color][color=#0000bb]IWshRuntimeLibrary[/color][color=#007700].[/color][color=#0000bb]WshShell[/color][COLOR=#007700]()
[/COLOR][color=#0000bb]Dim Shortcut [/color][color=#007700]As [/color][color=#0000bb]IWshRuntimeLibrary[/color][color=#007700].[/color][COLOR=#0000bb]IWshShortcut
[/COLOR][/COLOR]
3. تحديد اسم و موقع الShortcut لاحظ ان الاختصار لة امتداد خفي .LNK
كود :
[color=#000000][COLOR=#0000bb]Shortcut [/color][color=#007700]= [/color][color=#0000bb]CType[/color][color=#007700]([/color][color=#0000bb]WshShell[/color][color=#007700].[/color][color=#0000bb]CreateShortcut[/color][color=#007700]([/color][color=#0000bb]DesktopDir [/color][color=#007700]& [/color][color=#dd0000]"\Ahmed.lnk"[/color][color=#007700]), [/color][color=#0000bb]IWshRuntimeLibrary[/color][color=#007700].[/color][color=#0000bb]IWshShortcut[/color][COLOR=#007700])
[/COLOR][color=#0000bb][/color][/COLOR]
4. تحديد بعض خصائص الاختصار مثل مسار الملف الاصلي و الوصف Description
كود :
[color=#000000][COLOR=#0000bb] Shortcut[/color][color=#007700].[/color][color=#0000bb]TargetPath [/color][color=#007700]= [/color][COLOR=#dd0000]"C:\Windows\notepad.exe"
[/COLOR][color=#0000bb]Shortcut[/color][color=#007700].[/color][color=#0000bb]WindowStyle [/color][color=#007700]= [/color][COLOR=#0000bb]1
Shortcut[/COLOR][color=#007700].[/color][color=#0000bb]Hotkey [/color][color=#007700]= [/color][COLOR=#dd0000]"CTRL+SHIFT+N"
[/COLOR][color=#0000bb]Shortcut[/color][color=#007700].[/color][color=#0000bb]Description [/color][color=#007700]= [/color][COLOR=#dd0000]"Run Notepad"
[/COLOR][color=#0000bb]Shortcut[/color][color=#007700].[/color][color=#0000bb]WorkingDirectory [/color][color=#007700]= [/color][COLOR=#0000bb]DesktopDir
[/COLOR][/COLOR]
5. تحديد ايقونة الاختصار
كود :
[color=#000000][COLOR=#0000bb]Shortcut[/color][color=#007700].[/color][color=#0000bb]IconLocation [/color][color=#007700]= [/color][COLOR=#dd0000]"C:\Program Files\Smart PC Utilities\Game Fire\GameFire.exe"
[/COLOR][color=#0000bb][/color][/COLOR]
حفظ الاختصار
كود :
[color=#000000][COLOR=#0000bb]Shortcut[/color][color=#007700].[/color][color=#0000bb]Save[/color][COLOR=#007700]()
[/COLOR][color=#0000bb][/color][/COLOR]
------------------
والان سوف نتعلم كيفية التعامل مع Shortcuts الموجودة مثل معرفة مسار الملف الاصلي و خصائص هذا Shortcut, باستخدام الدالة التالية يمكننا معرفة مسار الملف الاصلي للاختصار:
كود :
[color=#000000][COLOR=#0000bb] [/color][color=#007700]Private Function [/color][color=#0000bb]Get_ShortcutTarget[/color][color=#007700]([/color][color=#0000bb]ByVal ShortcutPath [/color][color=#007700]As [/color][color=#0000bb]String[/color][color=#007700]) As [/color][COLOR=#0000bb]String
[/COLOR][COLOR=#007700]Try
[/COLOR][color=#0000bb]Dim WshShell [/color][color=#007700]As New [/color][color=#0000bb]IWshRuntimeLibrary[/color][color=#007700].[/color][color=#0000bb]WshShell[/color][COLOR=#007700]()
[/COLOR][color=#0000bb]Dim Shortcut [/color][color=#007700]As [/color][color=#0000bb]IWshRuntimeLibrary[/color][color=#007700].[/color][COLOR=#0000bb]IWshShortcut
Shortcut [/COLOR][color=#007700]= [/color][color=#0000bb]CType[/color][color=#007700]([/color][color=#0000bb]WshShell[/color][color=#007700].[/color][color=#0000bb]CreateShortcut[/color][color=#007700]([/color][color=#0000bb]ShortcutPath[/color][color=#007700]), [/color][color=#0000bb]IWshRuntimeLibrary[/color][color=#007700].[/color][color=#0000bb]IWshShortcut[/color][COLOR=#007700])
Return [/COLOR][color=#0000bb]Shortcut[/color][color=#007700].[/color][COLOR=#0000bb]TargetPath
[/COLOR][color=#007700]Catch [/color][color=#0000bb]ex [/color][color=#007700]As [/color][COLOR=#0000bb]Exception
[/COLOR][color=#007700]Return [/color][COLOR=#0000bb]ShortcutPath
End [/COLOR][COLOR=#007700]Try
[/COLOR][color=#0000bb]End [/color][COLOR=#007700]Function
[/COLOR][color=#0000bb][/color][/COLOR]
يمكن تعديل الدالة السابقة للحصول على معلومات اخرى بتغير الخاصية Property التي تلى Shortcut مثل
Shortcut.Hotkey او Shortcut.Description
والسلام عليكم ورحمة الله وبركاتة
ورمضان كريم
اخوكم Magic Sword