leaving aside the matter of trusting anyone more or less than microsoft for another day, in b4j you got your:
File.DirApp
and you got your:
Dim jo As JavaObject
jo.InitializeStatic("java.lang.System")
jo.RunMethod("getProperty", Array("user.dir")))
both give the same answer on my pc.
i use both file.dirapp and file.dirdata(), as the spirit moves me, to keep app-related files.
and, once again in relation to microsoft, i'm not sure what you mean by "microsoft data". i don't think it has anything to do with your current working directory, so try one of the above solutions and see how it works for you.