NSIS doesn't automatically detect dependencies. It's up to you to know what files are needed for your app.
I've used other installers that try to find dependencies for you, but often, the list of needed dependencies was ridiculously high. For example, InstallShield X said that one of my small apps needed 50MB worth of dependencies. In reality, we had no problems when he only used 4 MB of them. It did require us to know exactly what each "dependency" did, and if our app needed it, or if it comes pre-installed on Windows machines, etc. That time researching was definitely worth it.
If you are looking for a tool to automatically generate your installer for you (such as what MSI wizards will do for you), I personally do not know of any. I believe there are tools that help you build an installer, but ultimately, you'll still need to get involved coding some portions of your NSIS script.
Ultimately, if all you need is just to copy files and register some dll's, you shouldn't have much trouble making an NSIS installer script to do that, if you use other tools or sample installers to help you get started.