Namespace
LzmTW.uSystem.uWindows.Win32API
Friend
Class
ErrCollection00
Private
Collection
As
New
Dictionary(
Of
Integer
,
String
)
Private
Shared
Loader
As
ErrCollection00
Private
Shared
gInternalSyncObject
As
Object
Private
Sub
New
()
With
Collection
.Add(
1
,
"
功能错误
"
)
.Add(
2
,
"
系统找不到指定的文件
"
)
.Add(
3
,
"
系统找不到指定的路径
"
)
.Add(
4
,
"
系统无法打开文件
"
)
.Add(
5
,
"
拒绝访问
"
)
.Add(
6
,
"
句柄无效
"
)
.Add(
7
,
"
存储控制块被损坏
"
)
.Add(
8
,
"
存储空间不足,无法处理此命令
"
)
.Add(
9
,
"
存储控制块地址无效
"
)
.Add(
10
,
"
环境错误
"
)
.Add(
11
,
"
试图加载格式错误的程序
"
)
.Add(
12
,
"
访问码无效
"
)
.Add(
13
,
"
数据无效
"
)
.Add(
14
,
"
存储器不足,无法完成此操作
"
)
.Add(
15
,
"
系统找不到指定的驱动器
"
)
.Add(
16
,
"
无法删除目录
"
)
.Add(
17
,
"
系统无法将文件移到不同的驱动器
"
)
.Add(
18
,
"
没有更多文件
"
)
.Add(
19
,
"
介质受写入保护
"
)
.Add(
20
,
"
系统找不到指定的设备
"
)
.Add(
21
,
"
设备未就绪
"
)
.Add(
22
,
"
设备不识别此命令
"
)
.Add(
23
,
"
数据错误 (循环冗余检查)
"
)
.Add(
24
,
"
程序发出命令,但命令长度不正确
"
)
.Add(
25
,
"
驱动器无法找出磁盘上特定区域或磁道的位置
"
)
.Add(
26
,
"
无法访问指定的磁盘或软盘
"
)
.Add(
27
,
"
驱动器找不到请求的扇区
"
)
.Add(
28
,
"
打印机缺纸
"
)
.Add(
29
,
"
系统无法写入指定的设备
"
)
.Add(
30
,
"
系统无法从指定的设备上读取
"
)
.Add(
31
,
"
连到系统上的设备没有发挥作用
"
)
.Add(
32
,
"
进程无法访问文件,因为另一个程序正在使用此文件
"
)
.Add(
33
,
"
进程无法访问文件,因为另一个程序已锁定文件的一部分
"
)
.Add(
36
,
"
用来共享的打开文件过多
"
)
.Add(
38
,
"
到达文件结尾
"
)
.Add(
39
,
"
磁盘已满
"
)
.Add(
50
,
"
不支持网络请求
"
)
.Add(
51
,
"
远程计算机不可用
"
)
.Add(
52
,
"
在网络上已有重复的名称
"
)
.Add(
53
,
"
找不到网络路径
"
)
.Add(
54
,
"
网络忙
"
)
.Add(
55
,
"
指定的网络资源或设备不再可用
"
)
.Add(
56
,
"
已到达网络 BIOS 命令限制
"
)
.Add(
57
,
"
网络适配器硬件出错
"
)
.Add(
58
,
"
指定的服务器无法运行请求的操作
"
)
.Add(
59
,
"
发生意外的网络错误
"
)
.Add(
60
,
"
远程适配器不兼容
"
)
.Add(
61
,
"
打印机队列已满
"
)
.Add(
62
,
"
无法在服务器上获得用于保存待打印文件的空间
"
)
.Add(
63
,
"
删除等候打印的文件
"
)
.Add(
64
,
"
指定的网络名不再可用
"
)
.Add(
65
,
"
拒绝网络访问
"
)
.Add(
66
,
"
网络资源类型错误
"
)
.Add(
67
,
"
找不到网络名
"
)
.Add(
68
,
"
超过本地计算机网卡的名称限制
"
)
.Add(
69
,
"
超出网络 BIOS 会话限制
"
)
.Add(
70
,
"
远程服务器已暂停,或正在启动过程中
"
)
.Add(
71
,
"
当前已无法再同此远程计算机连接,因为已达到计算机的连接数目极限
"
)
.Add(
72
,
"
已暂停指定的打印机或磁盘设备
"
)
.Add(
80
,
"
文件存在
"
)
.Add(
82
,
"
无法创建目录或文件
"
)
.Add(
83
,
"
INT 24 失败
"
)
.Add(
84
,
"
无法取得处理此请求的存储空间
"
)
.Add(
85
,
"
本地设备名已在使用中
"
)
.Add(
86
,
"
指定的网络密码错误
"
)
.Add(
87
,
"
参数错误
"
)
.Add(
88
,
"
网络上发生写入错误
"
)
.Add(
89
,
"
系统无法在此时启动另一个进程
"
)
.Add(
100
,
"
无法创建另一个系统信号灯
"
)
.Add(
101
,
"
另一个进程拥有独占的信号灯
"
)
.Add(
102
,
"
已设置信号灯且无法关闭
"
)
.Add(
103
,
"
无法再设置信号灯
"
)
.Add(
104
,
"
无法在中断时请求独占的信号灯
"
)
.Add(
105
,
"
此信号灯的前一个所有权已结束
"
)
.Add(
107
,
"
程序停止,因为替代的软盘未插入
"
)
.Add(
108
,
"
磁盘在使用中,或被另一个进程 锁定
"
)
.Add(
109
,
"
管道已结束
"
)
.Add(
110
,
"
系统无法打开指定的 设备或文件
"
)
.Add(
111
,
"
文件名太长
"
)
.Add(
112
,
"
磁盘空间不足
"
)
.Add(
113
,
"
无法再获得内部文件的标识
"
)
.Add(
114
,
"
目标内部文件的标识不正确
"
)
.Add(
117
,
"
应用程序制作的 IOCTL 调用错误
"
)
.Add(
118
,
"
验证写入的切换参数值错误
"
)
.Add(
119
,
"
系统不支持请求的命令
"
)
.Add(
120
,
"
此功能只被此系统支持
"
)
.Add(
121
,
"
信号灯超时时间已到
"
)
.Add(
122
,
"
传递到系统调用的数据区太小
"
)
.Add(
123
,
"
文件名、目录名或卷标语法不正确
"
)
.Add(
124
,
"
系统调用级别错误
"
)
.Add(
125
,
"
磁盘没有卷标
"
)
.Add(
126
,
"
找不到指定的模块
"
)
.Add(
127
,
"
找不到指定的程序
"
)
.Add(
128
,
"
没有等候的子进程
"
)
.Add(
130
,
"
试图使用操作(而非原始磁盘 I/O)的已打开磁盘分区的文件句柄
"
)
.Add(
131
,
"
试图移动文件指针到文件开头之前
"
)
.Add(
132
,
"
无法在指定的设备或文件上设置文件指针
"
)
.Add(
133
,
"
包含先前加入驱动器的驱动器无法使用 JOIN 或 SUBST 命令
"
)
.Add(
134
,
"
试图在已被合并的驱动器上使用 JOIN 或 SUBST 命令
"
)
.Add(
135
,
"
试图在已被合并的驱动器上使用 JOIN 或 SUBST 命令
"
)
.Add(
136
,
"
系统试图解除未合并驱动器的 JOIN
"
)
.Add(
137
,
"
系统试图解除未替代驱动器的 SUBST
"
)
.Add(
138
,
"
系统试图将驱动器合并到合并驱动器上的目录
"
)
.Add(
139
,
"
系统试图将驱动器替代为替代驱动器上的目录
"
)
.Add(
140
,
"
系统试图将驱动器合并到替代驱动器上的目录
"
)
.Add(
141
,
"
系统试图替代驱动器为合并驱动器上的目录
"
)
.Add(
142
,
"
系统无法在此时运行 JOIN 或 SUBST
"
)
.Add(
143
,
"
系统无法将驱动器合并到或替代为相同驱动器上的目录
"
)
.Add(
144
,
"
目录并非根目录下的子目录
"
)
.Add(
145
,
"
目录非空
"
)
.Add(
146
,
"
指定的路径已在替代中使用
"
)
.Add(
147
,
"
资源不足,无法处理此命令
"
)
.Add(
148
,
"
指定的路径无法在此时使用
"
)
.Add(
149
,
"
企图将驱动器合并或替代为驱动器上目录是上一个替代的目标的驱动器
"
)
.Add(
150
,
"
系统跟踪信息未在 CONFIG.SYS 文件中指定,或不允许跟踪
"
)
.Add(
151
,
"
为 DosMuxSemWait 指定的信号灯事件个数错误
"
)
.Add(
152
,
"
DosMuxSemWait 不可运行。已设置过多的信号灯
"
)
.Add(
153
,
"
DosMuxSemWait 清单错误
"
)
.Add(
154
,
"
输入的卷标超过目标文件系统的 长度限制
"
)
.Add(
155
,
"
无法创建另一个线程
"
)
.Add(
156
,
"
接收进程已拒绝此信号
"
)
.Add(
157
,
"
段已被放弃且无法锁定
"
)
.Add(
158
,
"
段已解除锁定
"
)
.Add(
159
,
"
线程标识的地址错误
"
)
.Add(
160
,
"
传递到 DosExecPgm 的参数字符串错误
"
)
.Add(
161
,
"
指定的路径无效
"
)
.Add(
162
,
"
信号已暂停
"
)
.Add(
164
,
"
无法在系统中创建更多的线程
"
)
.Add(
167
,
"
无法锁定文件区域
"
)
.Add(
170
,
"
请求的资源在使用中
"
)
.Add(
173
,
"
对于提供取消区域进行锁定的请求不明显
"
)
.Add(
174
,
"
文件系统不支持锁定类型的最小单元更改
"
)
.Add(
180
,
"
系统检测出错误的段号
"
)
.Add(
183
,
"
当文件已存在时,无法创建该文件
"
)
.Add(
186
,
"
传递的标志错误
"
)
.Add(
187
,
"
找不到指定的系统信号灯名称
"
)
.Add(
196
,
"
操作系统无法运行此应用程序
"
)
.Add(
197
,
"
操作系统当前的配置不能运行此应用程序
"
)
.Add(
199
,
"
操作系统无法运行此应用程序
"
)
.Add(
200
,
"
代码段不可大于或等于 64K
"
)
.Add(
203
,
"
操作系统找不到已输入的 环境选项
"
)
.Add(
205
,
"
命令子树中的进程 没有信号处理程序
"
)
.Add(
206
,
"
文件名或扩展名太长
"
)
.Add(
207
,
"
第 2 环堆栈已被占用
"
)
.Add(
208
,
"
没有正确输入文件名通配符 * 或 ?,或指定过多的文件名通配符
"
)
.Add(
209
,
"
正在发送的信号错误
"
)
.Add(
210
,
"
无法设置信号处理程序
"
)
.Add(
212
,
"
段已锁定且无法重新分配
"
)
.Add(
214
,
"
连到该程序或动态链接模块的动态链接模块太多
"
)
.Add(
215
,
"
无法嵌套调用 LoadModule
"
)
.Add(
230
,
"
管道状态无效
"
)
.Add(
231
,
"
所有的管道实例都在使用中
"
)
.Add(
232
,
"
管道正在关闭中
"
)
.Add(
233
,
"
管道的另一端上无任何进程
"
)
.Add(
234
,
"
更多数据可用
"
)
.Add(
240
,
"
取消会话
"
)
.Add(
254
,
"
指定的扩展属性名无效
"
)
.Add(
255
,
"
扩展属性不一致
"
)
.Add(
258
,
"
等待的操作过时
"
)
.Add(
259
,
"
没有可用的数据了
"
)
.Add(
266
,
"
无法使用复制功能
"
)
.Add(
267
,
"
目录名无效
"
)
.Add(
275
,
"
扩展属性在缓冲区中不适用
"
)
.Add(
276
,
"
装在文件系统上的扩展属性文件已损坏
"
)
.Add(
277
,
"
扩展属性表格文件已满
"
)
.Add(
278
,
"
指定的扩展属性句柄无效
"
)
.Add(
282
,
"
装入的文件系统不支持扩展属性
"
)
.Add(
288
,
"
企图释放并非呼叫方所拥有的多用户终端运行程序
"
)
.Add(
298
,
"
发向信号灯的请求过多
"
)
.Add(
299
,
"
仅完成部分的 ReadProcessMemoty 或 WriteProcessMemory 请求
"
)
.Add(
300
,
"
操作锁定请求被拒绝
"
)
.Add(
301
,
"
系统接收了一个无效的操作锁定确认
"
)
.Add(
487
,
"
试图访问无效的地址
"
)
.Add(
534
,
"
算术结果超过 32 位
"
)
.Add(
535
,
"
管道的另一端有一进程
"
)
.Add(
536
,
"
等候打开管道另一端的进程
"
)
.Add(
994
,
"
拒绝访问扩展属性
"
)
.Add(
995
,
"
由于线程退出或应用程序请求,已放弃 I/O 操作
"
)
.Add(
996
,
"
重叠 I/O 事件不在信号状态中
"
)
.Add(
997
,
"
重叠 I/O 操作在进行中
"
)
.Add(
998
,
"
内存分配访问无效
"
)
.Add(
999
,
"
错误运行页内操作
"
)
End
With
End Sub
Private
Shared
Function
GetLoader()
As
ErrCollection00
If
Loader
Is
Nothing
Then
SyncLock
InternalSyncObject
If
Loader
Is
Nothing
Then
Loader
=
New
ErrCollection00
End
If
End
SyncLock
End
If
Return
Loader
End Function
Private
Shared
ReadOnly
Property
InternalSyncObject()
As
Object
Get
If
gInternalSyncObject
Is
Nothing
Then
System.Threading.Interlocked.CompareExchange(gInternalSyncObject,
New
Object
,
Nothing
)
End
If
Return
gInternalSyncObject
End
Get
End Property
Public
Shared
Function
GetString(
ByVal
errNum
As
Integer
)
As
String
With
GetLoader.Collection
If
.ContainsKey(errNum)
Then
Return
.Item(errNum)
Else
Return
"
预留或未知
"
End
If
End
With
End Function
End Class
End Namespace