乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 155|回复: 13

文件大小

[复制链接]

4

主题

17

帖子

3

银币

初来乍到

Rank: 1

铜币
33
发表于 2015-3-9 15:17:20 | 显示全部楼层 |阅读模式
嗨,朋友们我想通过VB中的这行代码获得活动绘图的大小,但是我得到了一个Error.Please有人帮助我了解此代码的正确形式。Dim long as long=newSystem.IO.FileInfo(path),长度。

本帖以下内容被隐藏保护;需要你回复后,才能看到!

游客,如果您要查看本帖隐藏内容请回复
回复

使用道具 举报

7

主题

46

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
74
发表于 2015-3-9 16:02:10 | 显示全部楼层
什么样的错误?
回复

使用道具 举报

116

主题

996

帖子

9

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1466
发表于 2015-3-9 23:21:26 | 显示全部楼层
路径变量的值是多少??
回复

使用道具 举报

4

主题

17

帖子

3

银币

初来乍到

Rank: 1

铜币
33
发表于 2015-3-10 14:34:19 | 显示全部楼层
您好谢谢BillZndl和Kerry的回复,该路径是一个活动图形文件夹,我想获得活动图形的大小,以KB或MB为单位。 Path的例程最初是由Kean Walmsley编写的。
将文档显示为文档=应用程序,document manager . MdiActiveDocument 。
Dim h _ app As HostApplicationServices = HostApplicationServices,当前。
Dim path As String = h_app,FindFile(doc,名字,医生。数据库,FindFileHint。[默认])。
doc,editor . write message(vbLf & path)。
结束Sub。
回复

使用道具 举报

7

主题

46

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
74
发表于 2015-3-10 15:27:53 | 显示全部楼层
您确实说过您遇到的错误,但如果它是eFilerError,则很可能您正在新的/未保存的图形中运行代码。如果我检查未保存的绘图,代码工作找到。对不起,但我只知道C#。 int title = Convert.ToInt32(AcadApp.GetSystemVariable(“DWGTITLED”));。

如果 (标题 > 0 )。
{。
字符串路径 = h_app,FindFile(doc.姓名,文档。Database, FindFileHint.Default);                                   。
FileInfo info = new FileInfo(path);。
大小 = 信息,长度;。
编辑,WriteMessage(“\nPath: ” + path);。
编辑,WriteMessage(“\nFileSize: ” + size);。
}。
还。
{。
编辑,WriteMessage(“\nFile not found”);。
}。

回复

使用道具 举报

15

主题

687

帖子

169

银币

中流砥柱

Rank: 25

铜币
582
发表于 2015-3-10 15:31:44 | 显示全部楼层
您可以尝试这种方式(如果文件尚未保存,db.Filename返回模板路径):Document doc=Application.DocumentManager.MdiActiveDocument;。
数据库db=doc.Database;。
编辑=doc.Editor;。
ed.WriteMessage("\n{0}Ko",新System.IO.FileInfo(db.Filename)。长度/1024);。
回复

使用道具 举报

7

主题

46

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
74
发表于 2015-3-10 16:25:37 | 显示全部楼层

好多了!
回复

使用道具 举报

4

主题

17

帖子

3

银币

初来乍到

Rank: 1

铜币
33
发表于 2015-3-11 12:35:56 | 显示全部楼层
您好
感谢BillZndl和gile的回复。
我使用了两个建议。gile的代码工作正常,但是当我运行BillZndl时,我得到了如下错误:
这是我的代码:
  1. Imports Autodesk.AutoCAD.Runtime
  2. Imports Autodesk.AutoCAD.ApplicationServices
  3. Imports Autodesk.AutoCAD.DatabaseServices
  4. Imports Autodesk.AutoCAD.EditorInput
  5. Imports Autodesk.AutoCAD.Geometry
  6. Imports System.IO
  7. Public Class Class1
  8.      _
  9.     Public Sub DrawingPath()
  10.         Dim doc As Document = Application.DocumentManager.MdiActiveDocument
  11.         Dim h_app As HostApplicationServices = HostApplicationServices.Current
  12.         Dim title As Integer = Convert.ToInt32(doc.GetSystemVariable("DWGTITLED"))
  13.         If title > 0 Then
  14.             Dim path As String = h_app.FindFile(doc.Name, doc.Database, FindFileHint.[Default])
  15.             Dim info As New FileInfo(path)
  16.             Dim size As Long = info.Length
  17.             doc.Editor.WriteMessage(vbLf & "Path: " & path)
  18.             doc.EditorWriteMessage(vbLf & "FileSize: " & size)
  19.         Else
  20.             doc.Editor.WriteMessage(vbLf & "File not found")
  21.         End If
  22.     End Sub
  23. End Class

回复

使用道具 举报

71

主题

928

帖子

8

银币

顶梁支柱

Rank: 50Rank: 50

铜币
1230
发表于 2015-3-11 12:51:02 | 显示全部楼层
Robert,GetSystemVariable适用于应用程序,而不是文档(请重新阅读Bill的帖子)<您省略了一个“.”在Else正上方的队列中。
回复

使用道具 举报

7

主题

46

帖子

3

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
74
发表于 2015-3-11 13:27:09 | 显示全部楼层
是的,
AcadApp的使用语句是:
使用AcadApp=Autodesk.AutoCAD.ApplicationServices.Application
AcadApp。GetSystemVariable(“DwgTitled”)
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-2-5 04:01 , Processed in 0.282405 second(s), 83 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表