As your original question still isn't answered and I wondered the same, here's the answer.
Short answer: No, without root it's not possible to run an SMB server using the default ports so that it's found by Windows PCs.
Long answer: SMB either runs on ports 137-139 (UDP and TCP) using NetBIOS or on newer systems (from Windows Vista onwards) directly on TCP port 445 where in the latter case computer names are resolved by the LLMNR (Link-local Multicast Name Resolution) protocol which runs on UDP port 5355. Why is this important? Apps not running as root can't bind to unprivileged ports (<1024). As it's notIt's possible to use alternative ports (>=1024) for SMB, such apps must run as root but Windows is hard-wired to just listen to the default ones. So I guess if you use Linux or a separate SMB client for Windows which allows to connect to a server with a custom port number it's probably possible. But it's not really a straight-forward way.