关于修改默认工作路径的问题,在线...

lyphb 2003-10-28 09:15:15
例如现在系统的默认工作路径是:
d:\myfolder
我想将默认路径修改为这种形式:
\\mymachinename\mysharefolder
如何实现?
...全文
106 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
lyphb 2003-10-28
  • 打赏
  • 举报
回复
大家多多帮忙
我顶
lyphb 2003-10-28
  • 打赏
  • 举报
回复
其实我想要得结果是:
我当前的工作路径想用共享路径的方式表示:即\\...的形式
而不是用绝对路径表示。
我的程序应该怎样做才能使curdir返回的值是\\...的形式?

调用系统的“打开文件”对话框,在网络邻居里选择机器名、共享
文件夹名...,用curdir跟踪一下,可以发现路径变成\\...的形式了
,不知道它是怎么实现的?
muniu 2003-10-28
  • 打赏
  • 举报
回复
奇怪的问题,给你up。
lyphb 2003-10-28
  • 打赏
  • 举报
回复
大家误会了,我说得详细点,举个例子:

'*****************************************************************
debug.print curdir '假设结果是 d:\myfodler
chdir "\\mymachinename\mysharefolder"
debug.print curdir '结果仍然是 d:\myfodler
'*****************************************************************

'****************************************************************
debug.print curdir '假设结果是 \\mymachinename\mysharefoler
chdir "\\mymachinename\yoursharefolder"
debug.print curdir '结果是 \\mymachinename\yoursharefoler
'****************************************************************

为什么后者改变了,而前者不行?忘大家指点迷津,谢谢。
射天狼 2003-10-28
  • 打赏
  • 举报
回复
本示例使用 ChDir 语句来改变当前目录或文件夹。

' 将当前目录或文件夹改为“MYDIR”。
ChDir "MYDIR"

' 假设当前的驱动器是“C:”,下列语句将把
' 默认目录改至“D:”,而“C:”仍旧是当前驱动器。
ChDir "D:\WINDOWS\SYSTEM"
射天狼 2003-10-28
  • 打赏
  • 举报
回复
ChDir 语句

改变当前的目录或文件夹。

语法

ChDir path

必要的 path 参数是一个字符串表达式,它指明哪个目录或文件夹将成为新的缺省目录或文件夹。path 可能会包含驱动器。如果没有指定驱动器,则 ChDir 在当前的驱动器上改变缺省目录或文件夹。

说明

ChDir 语句改变缺省目录位置,但不会改变缺省驱动器位置。例如,如果缺省的驱动器是 C,则下面的语句将会改变驱动器 D 上的缺省目录,但是 C 仍然是缺省的驱动器:

ChDir "D:\TMP"
northwolves 2003-10-28
  • 打赏
  • 举报
回复
dim filepath as string
filepath=mymachinename\mysharefolder
道素 2003-10-28
  • 打赏
  • 举报
回复
计算机名称你可以用api和环境变量

Private Const MAX_COMPUTERNAME_LENGTH As Long = 31
Private Declare Function GetComputerName Lib "kernel32" Alias "GetComputerNameA" (ByVal lpBuffer As String, nSize As Long) As Long
Private Sub Form_Load()
Dim dwLen As Long
Dim strString As String

dwLen = MAX_COMPUTERNAME_LENGTH + 1
strString = String(dwLen, "X")

GetComputerName strString, dwLen

strString = Left(strString, dwLen)

MsgBox strString
End Sub

环境变量
environ("ComputerName")
就是计算机名

至于共享名,一台计算机可能有很多共享名,你又凭什么标准确实是哪一个
除非你固定共享名,或者用参数传入应用程序
就是加个配置页面
muniu 2003-10-28
  • 打赏
  • 举报
回复
用app.path来指定。
lyphb 2003-10-28
  • 打赏
  • 举报
回复
谢谢SnHnBn,结贴。
SnHnBn 2003-10-28
  • 打赏
  • 举报
回复
用SetCurrentDirectory这个API,VB的ChDir会把"\\"以为是根目录。

Private Declare Function SetCurrentDirectory Lib "kernel32" Alias "SetCurrentDirectoryA" (ByVal lpPathName As String) As Long

Private Sub Form_Load()
MsgBox CurDir
SetCurrentDirectory "\\mymachinename\mysharefolder"
MsgBox CurDir
End Sub
vbanddelphi 2003-10-28
  • 打赏
  • 举报
回复
我本人不会,我只能帮你顶一下!!顶顶顶顶!!!!!
lyphb 2003-10-28
  • 打赏
  • 举报
回复
没有人知道该怎么做吗?
我再顶!

7,759

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧