เรียกใช้สคริปต์

ส่วนก่อนหน้านี้ การใช้ไส้พารามิเตอร์ (Preprocessor ของนายทะเบียนการ), สนทนาแทนแผนที่ และแนะนำวิธีการของนายทะเบียนAddReplacementและClearReplacementsสอง นายทะเบียนมีแปดวิธีอื่น ๆ โดยเฉพาะการเขียนสคริปต์ ทั้งหมดแปดของวิธีการเหล่านี้มีคำอธิบายในตารางต่อไปนี้ และเรียกใช้สคริปต์เฉพาะผู้ลงทะเบียน?

วิธีการ ไวยากรณ์/คำอธิบาย
ResourceRegister Hresult ใน ResourceRegister (LPCOLESTR resFileName, UINT nID, LPCOLESTR szType );

สคริปต์มีอยู่ในทรัพยากรของโมดูลการลงทะเบียน resFileNameบ่งชี้ว่า เส้นทาง UNC ไปยังโมดูตัวเอง nIDและszTypeมีชนิด และ ID ของทรัพยากรตามลำดับ?

ResourceUnregister Hresult ใน ResourceUnregister (LPCOLESTR resFileName, UINT nID, LPCOLESTR szType );

Unregisters สคริปต์ในทรัพยากรของโมดูล resFileNameบ่งชี้ว่า เส้นทาง UNC ไปยังโมดูตัวเอง nIDและszTypeมีชนิด และ ID ของทรัพยากรตามลำดับ?

ResourceRegisterSz Hresult ใน ResourceRegisterSz (LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType );

สคริปต์มีอยู่ในทรัพยากรของโมดูลการลงทะเบียน resFileNameบ่งชี้ว่า เส้นทาง UNC ไปยังโมดูตัวเอง szIDและszTypeมีตัวระบุสายอักขระของทรัพยากรและชนิด ตามลำดับ?

ResourceUnregisterSz Hresult ใน ResourceUnregisterSz (LPCOLESTR resFileName, LPCOLESTR szID, LPCOLESTR szType );

Unregisters สคริปต์ในทรัพยากรของโมดูล resFileNameบ่งชี้ว่า เส้นทาง UNC ไปยังโมดูตัวเอง szIDและszTypeมีตัวระบุสายอักขระของทรัพยากรและชนิด ตามลำดับ?

FileRegister Hresult ใน FileRegister (LPCOLESTR fileName );

สคริปต์การลงทะเบียนในแฟ้ม ชื่อแฟ้มเป็นเส้นทาง UNC เป็นแฟ้มที่ประกอบด้วย (หรือไม่) สคริปต์ทรัพยากร?

FileUnregister Hresult ใน FileUnregister (LPCOLESTR fileName );

Unregisters สคริปต์ในแฟ้ม ชื่อแฟ้มเป็นเส้นทาง UNC เป็นแฟ้มที่ประกอบด้วย (หรือไม่) สคริปต์ทรัพยากร?

StringRegister Hresult ใน StringRegister (LPCOLESTR ข้อมูล );

สคริปต์การลงทะเบียนในสต ข้อมูลประกอบด้วยสคริปต์ตัวเอง?

StringUnregister Hresult ใน StringUnregister (LPCOLESTR ข้อมูล );

Unregisters สคริปต์ในสายอักขระ ข้อมูลประกอบด้วยสคริปต์ตัวเอง?


ATL ใช้สองวิธีแรกแสดงในตาราง (ResourceRegisterและResourceUnregister) ใน atlimpl.cpp:

LPCOLESTR szType = OLESTR("REGISTRY")
GetModuleFileName (pM-gt; m_hInstResource, szModule, _MAX_PATH);
LPOLESTR pszModule = T2OLE(szModule)

ถ้า (HIWORD(lpszRes)==0)
{
   ถ้า (bRegister)
     hRes = p - > ResourceRegister (pszModule, ((UINT)LOWORD((DWORD)lpszRes)), szType);
   อื่น
     hRes = p - > ResourceUnregister (pszModule, ((UINT)LOWORD((DWORD)lpszRes)), szType);
}
อื่น
{
   ถ้า (bRegister)
     hRes = p - > ResourceRegisterSz (pszModule, lpszRes, szType);
   อื่น
     hRes = p - > ResourceUnregisterSz (pszModule, lpszRes, szType);
}

หมายเหตุที่ szModule ประกอบด้วยค่ารับมาจากGetModuleFileName?

วิธีสองที่แสดงในตารางResourceRegisterSzและResourceUnregisterSzคล้ายกับResourceRegisterและResourceUnregisterแต่อนุญาตให้คุณระบุตัวระบุสายอักขระ?

วิธีการFileRegisterและFileUnregisterมีประโยชน์ ถ้าคุณไม่ต้องการให้สคริปต์ในทรัพยากร หรือ ถ้าคุณต้องการให้สคริปต์ในแฟ้มของตัวเอง วิธีการStringRegisterและStringUnregisterอนุญาตให้แฟ้ม.rgs ถูกเก็บไว้ในสายอักขระปันส่วนแบบไดนามิก?

Index