我将C#应用程序设置为在服务器上运行的远程应用程序。
当应用程序运行时,我从System.Environment中获取MyDocuments文件夹,以便保存用户生成的文件。我得到的MyDocuments路径自然就是服务器上的路径。
有没有办法获取客户端计算机的MyDocuments文件夹路径?或者至少某种方式获取调用远程应用程序的机器的名称(或IP)?
答案 0 :(得分:1)
找到解决方案。
可以使用\ tsclient \\ ...
访问客户端计算机我首先将我的应用程序中的MyDocuments路径默认为Environment.SpecialFolder.MyDocuments,这当然是远程应用程序的“服务器”的机器。然后,我检查客户端计算机上是否存在并写入以下文件夹的访问级别
\\tsclient\C\Users\<username>\Documents
\\tsclient\C\Users\<domainname>.<username>\Documents
\\tsclient\D\Users\<username>\Documents
\\tsclient\D\Users\<domainname>.<username>\Documents
然后是XP ......
\\tsclient\C\Documents and Settings\<username>\Documents
\\tsclient\D\Documents and Settings\<username>\Documents
如果不存在,那么我使用远程应用程序“服务器”上的文件夹。
不是最优雅,但它有效。