xampp بعضاً به چنین مشکلاتی برخورد میکنه بدون اینکه پورتی اشغال شده باشه.
منتها شما یکبار cmd رو باز کنید و ببینید آیا پورت 80 که برای آپاچی نیاز هست، اشغال شده توسط برنامه ای یا نه:
netstat -aon | findstr :80
همینطور 3306 رو هم میتونید بجای 80 بذارید و ببینید پورت mysql اشغال شده یا نه!
اگر مشکلی بابت پورت وجود نداره، یکبار برنامه رو ببینید و روی برنامه راست کلیک کنید و run as administrator بزنید و بعد سمت چپ apache و mysql دو تا مربع خالی هست، دوتارو کلیک کنید تا تیک زده شه.
بعد سیستم رو ریستارت کنید تا مجدد بالا بیاد.
در زمان بالا اومدن سیستم عامل، این بار باید آپاچی و mysql هم اتومات استارت شوند بدون باز کردن برنامه توسط شما.