الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

أريد تركيب ملف lnk كي أحصل على الإختصار

مغلق
بدأه mossa في 27 أبريل 2005 · 2 رد · 545 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

أريد تركيب ملف lnk كي أحصل على الملف المشار إليه

وذلك لأني أريد ملفات بدء التشغيل

فكيف

#2

بكل بساطة مرر مسار ملف lnk إلى هذة الدالة

void   GetPathLnk(LPSTR path)
{
	char FileName[MAX_PATH];
     strcpy(FileName,path);
    HRESULT  hResult    = NULL; 
	hResult = CoInitialize(NULL);

	WIN32_FIND_DATA w;
	HANDLE f = FindFirstFile(FileName,&w);
	CloseHandle(f);

	IShellLink *pShellLink = NULL;

  hResult=CoCreateInstance(CLSID_ShellLink, NULL, 
        CLSCTX_INPROC_SERVER, IID_IShellLink, (void**) &pShellLink); 

  /////////////////////////////////////////////2
  IPersistFile *pPersistFile = NULL;

hResult=pShellLink->QueryInterface(IID_IPersistFile,(void**)&pPersistFile);

	//////////////////////////////////////////////////3
	WORD wFileName[MAX_PATH];
	MultiByteToWideChar(CP_ACP,0,FileName,-1,wFileName,MAX_PATH);
	pPersistFile->Load(wFileName,STGM_READ);

	/////////////////////////////////////////////////////4
pShellLink->Resolve(m_hWnd ,SLR_NO_UI);

	////////////////////////////////////////////////////////5
	char ShortPointedFile[MAX_PATH];
pShellLink->GetPath(ShortPointedFile,MAX_PATH,&w,SLGP_SHORTPATH);

	///////////////////////////////////////////////////////////6
	char LongPointedFile[MAX_PATH];
	char npro[100]="";
	GetLongPathName(ShortPointedFile,LongPointedFile,MAX_PATH);
GetFileTitle (LongPointedFile,npro,MAX_PATH);

MessageBox (NULL,LongPointedFile,NULL,MB_OK);

	pPersistFile->Release();
  pShellLink->Release();

  CoUninitialize();


}

وطريقة إستخدام الدالة

 GetPathLnk("d:\\file.lnk");

وعند تنفيذها يظهر مسج , يحتوي على عنوان البرنامج الحقيقي

مثل C:\windows\file.exe

وبالتوفيق ,,

http://www.jaascois.com

*************************************************

مجموعة مواضيع - إحتراف البرمجة -

ّ~~~~~~~~~~~~~~~~~~~~~~

البرمجة المتقدمة & الهندسة العكسية & برمجة وأمن الأنظمة

/index.php?showtopic=45002

آخر المواضيع :

+- تحليل جرائم الكمبيوتر -+

أنظمة اليونكس(Solaris,HP, AIX,SCO)وانواع المعالجات

ثغرة SMS لأجهزة الجوال Siemens 3568i !

أخطاء وثغرات البرامج العربية !!!

سلسلة مواضيع - أمن وحماية مواقع الويب -

E البرمجة المتقدمة X للملفات التنفيذية E

سلسلة مواضيع ثغرات الأنظمة وإختراق الأجهزة

**************************************************

<span style='font-size:14pt;line-height:100%'>الإرادة تحـــقق السيـــادة</span>

**************************************************

#3

أشكرك من أعماق قلبي

يا أستاذنا Jaas

هذا الموضوع مغلق.

مواضيع مشابهة