Some software uses a .bat to install (usually open-source stuff so far I've seen), and some software uses a .exe or .msi to install (usually more popular or closed-source stuff).
Is there a reason why some projects use a .bat and some use a .exe? The only reason I've come up with is that it's faster to use a .bat if the project is small and dependency-light.