توابع مورد نیاز به یونیتهای جدید دلفی اضافه شده، من نسخه جدید یونیتها رو به پرژه اضافه کردم، اما این یونیتها به صورت داخلی از یونتهای دیگه استفاده کردن، اون دو یونیت رو باز کنید و پیشوند WinApi رو از نام یونیتهایی که درونشون Use شدن حذف کنید، احتمالا مشکل اول حل خواهد شد
البته نام برخی یونیتهای دیگه هم تغییر کرده باشه، چون در حال حاضر دلفی 7 روی سیستم ندارم که تست کنم
برای مشکل دوم، پیغام خطا به دلیل اختلاف نوع Char در دلفی 7 و نسخه های جدید هستش، در دلفی 7 یونیکد پشتیبانی نمیشه و نوع Char از نوع AnsiChar تعریف شده ولی در نسخه های جدید نوع Char برای پشتیبانی از یونیکد به WideChar تغییر کرده، متناسب با همین قضیه، توابعی که از نوع Char استفاده میکنند برای نوع WideChar بهینه سازی و تصحیح شدن
پیغام خطای دوم هم ظاهرا به همین دلیل نمایش داده میشه و به این دلیله که متغیر Result برای استفاده در تابع جدید باید از نوع WideChar باشه اما در دلفی 7 متغیر Result از نوع AnsiChar هست
مقدار MChar که به صورت آرایه ای از Char به عنوان یک Type تعریف شده رو به صورت آرایه ای از WideChar تغییر بدید ببینید مشکل حل میشه :
TMChar = array[0..MAX_PATH] of WideChar;


پ.ن : پیشنهاد می کنم از دلفی 7 دل بکنید و از نسخه های جدید استفاده کنید