说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

在DELPHI程序中获取网络资源信息

HTML文档下载 WORD文档下载 PDF文档下载
在DELPHI程序中获取网络资源信息

充分利用局域网中的共享资源,无疑将减少用户的硬件和软件投资。在我们的程序中,常常会需要列举局域网络中的共享资源,如在MIDAS多层应用程序中可能要选择上层应用程序所在的服务器的名称、在打印模块中选择可用的网络打印机、在应用程序中选择其它机器上的共享文件等。

以一个MIDAS三层数据库应用程序为例子,我们可以用DELPHI制作一个客户端应用程序和一个中间层业务处理程序,由中间层业务处理程序向数据库存取数据,再将结果反馈到客户端。

当客户端应用程序与中间层程序和数据库服务程序不在一台机器上时,需要指定中间层程序和数据库服务程序所在的服务器的名称。

在DELPHI程序中,我们可以通过WIN API来列举局域网络中的服务器名称、用户计算机名称、用户共享目录和文件、共享打印机等资源,这些API由文件MPR.DLL提供。

下面以WIN9X的对等网络为例子,列举“网络邻居”中的工作组名称、用户计算机名称、共享目录和文件、共享打印机等资源。

一、列举“网络邻居”中的工作组名称

在“网络邻居”中,打开“整个网络”,可以看到网络中的所有工作组的名称。在DELPHI程序中,可以用API函数WNetOpenEnum和WNetEnumResource来列举“网络邻居”中的工作组名称。

下面是两个API函数的简介,具体请参见DELPHI帮助文件。

//WNetOpenEnum用于获取一个网络资源句柄,作为WNetEnumResource列举网络资源的依据,其函数原型如下:

function WNetOpenEnum(

dwScope

//网络范围

RESOURCE_CONNECTED(已连接机器)

RESOURCE_GLOBALNET(所有机器)

RESOURCE_REMEMBERED(已记忆的机器)

dwType

//资源类型

RESOURCETYPE_ANY(所有资源)

RESOURCETYPE_DISK(文件资源)

RESOURCETYPE_PRINT(打印资源)

dwUsage//资源用途

0(所有资源)

RESOURCEUSAGE_CONNECTABLE(所有可连接资源)

RESOURCEUSAGE_CONTAINER(所有container资源)仅在dwScope为RESOURCE_GLOBALNET是有效

: DWORD;

lpNetResource: PNetResource;//NetResource类型指针,其内存表示网络资源的层次

为NIL时

表示最上层,仅在dwScope为RESOURCE_GLOBALNET时有效

其它情况时应为NIL

var lphEnum: THandle//返回网络资源句柄,是WNetEnumResource进一步列举网络资源的依据

): DWORD; stdcall;

返回值NO_ERROR表示执行成功,否则应用GetLastError获取错误信息

//WNetEnumResource用于列出当前网络中可用的资源,包括文件资源和打印资源,其函数原型如下:

function WNetEnumResource(

hEnum: THandle;//WNetEnumResource进一步列举网络资源的依据

通常由WNetOpenEnum取得

var lpcCount: DWORD;//要取得资源的数目,$FFFFFFFF表示列出所有资源,返回值为实际资源数目

lpBuffer: Pointer;//接收结果的缓冲区的指针,一般是NetResource类型的数组

var lpBufferSize: DWORD//接收结果的缓冲区大小(Byte)

): DWORD; stdcall;

返回值为NO_ERROR(执行成功)或ERROR_NO_MORE_ITEMS(资源列举完毕),否则应用GetLastError获取错误信息。

要列举网络中的工作组信息,首先要获取网络中的网络类型,再获取每一种类型网络中包含的工作组的名称。

1、获取网络类型信息

局域网中可以是由多种类型的网络组成,如由Microsoft、Novell等类型的网络组成。用API函数WNetOpenEnum和WNetEnumResource可以获取网络类型信息。

(1)用WNetOpenEnum函数返回一个句柄,作为WNetEnumResource列举网络资源的依据。我们的目标是列举“整个网络”的工作组名称,因而网络范围为RESOURCE_GLOBALNET(所有机器)、资源类型为RESOURCETYPE_DISK(文件资源)、资源用途为RESOURCEUSAGE_CONTAINER(所有container资源)、

网络层次为最高层(NIL),这样可以得到一个句柄,以便进一步列举网络资源。具体的程序段如下:

{ Res : DWORD; lphEnum : THandle; }

Res := WNetOpenEnum( RESOURCE_GLOBALNET

RESOURCETYPE_DISK

RESOURCEUSAGE_CONTAINER

Nil

lphEnum);

If Res <> NO_ERROR Then exit;//执行失败

(2)用API函数WNetEnumResource可以获取网络类型信息,此时要用到上面获取的句柄lphEnum,

可以获取一个NetResource类型的数组,每个NetResource元素即为一种网络类型信息。

具体的请参见以下程序段及注释信息。

type

TNetResourceArray = ^TNetResource;//网络类型的数组

Var

NetResource : TNetResource;

Buf : Pointer;

Count

BufSize

Res : DWORD;

lphEnum : THandle;

p : TNetResourceArray;

i

j : SmallInt;

NetworkTypeList : TList;

begin

......

Count := $FFFFFFFF;//不限资源数目

BufSize := 8192;//缓冲区大小设置为8K

GetMem(Buf

BufSize);//申请内存,用于获取工作组信息

Res := WNetEnumResource(lphEnum

Count

Pointer(Buf)

BufSize);//获取网络类型信息

If ( Res = ERROR_NO_MORE_ITEMS )//资源列举完毕

or (Res <> NO_ERROR )//执行失败

Then Exit;

P := TNetResourceArray(Buf);

For I := 0 To Count - 1 Do//记录各个网络类型的信息

Begin

NetworkTypeList.Add(p);

Inc(P);

End;

......

end;

2、获取工作组信息

在获取网络类型信息后,可以根据此信息获取此类型网络中的服务器(工作组)信息。

在WNetOpenEnum函数中,将参数lpNetResource指定为一种网络类型信息,可以获取一个句柄,在WNetEnumResource中利用这个句柄,可以获取一个NetResource类型的数组,每个NetResource元素的lpRemoteName部分即为一个工作组名称(如“MyWorkGroup”)。

具体的请参见以下程序段及注释信息。

//列出一个网络类型中的所有工作组名称

NetResource := TNetResource(NetworkTypeList.Items[J]^);//网络类型信息

//获取某个网络类型的文件资源的句柄,NetResource为网络类型信息,lphEnum为返回句柄

Res := WNetOpenEnum(RESOURCE_GLOBALNET

RESOURCETYPE_DISK

RESOURCEUSAGE_CONTAINER

@NetResource

lphEnum);

If Res <> NO_ERROR Then break;//执行失败

While true Do//列举一个网络类型的所有工作组的信息

Begin

Count := $FFFFFFFF;//不限资源数目

BufSize := 8192;//缓冲区大小设置为8K

GetMem(Buf

BufSize);//申请内存,用于获取工作组信息

//获取一个网络类型的文件资源信息,

Res := WNetEnumResource(lphEnum

Count

Pointer(Buf)

BufSize);

If ( Res = ERROR_NO_MORE_ITEMS ) //资源列举完毕

or (Res <> NO_ERROR) //执行失败

then break;

P := TNetResourceArray(Buf);

For I := 0 To Count - 1 Do//列举各个工作组的信息

Begin

List.Add( StrPAS( P^.lpRemoteName ));//取得一个工作组的名称

Inc(P);

End;

End;

3、获取工作组信息的完全源代码

//列举出整个网络中的工作组名称,返回值为TRUE表示执行成功,

//参数List中返回服务器(工作组)的名称

Function GetServerList( var List : TStringList ) : Boolean;

Var

NetResource : TNetResource;

Buf : Pointer;

Count

BufSize

Res : DWORD;

lphEnum : THandle;

p : TNetResourceArray;

i

j : SmallInt;

NetworkTypeList : TList;

Begin

Result := False;

NetworkTypeList := TList.Create;

List.Clear;

//获取整个网络中的文件资源的句柄,lphEnum为返回名柄

Res := WNetOpenEnum( RESOURCE_GLOBALNET

RESOURCETYPE_DISK

RESOURCEUSAGE_CONTAINER

Nil

lphEnum);

If Res <> NO_ERROR Then exit;//Raise Exception(Res);//执行失败

//获取整个网络中的网络类型信息

Count := $FFFFFFFF;//不限资源数目

BufSize := 8192;//缓冲区大小设置为8K

GetMem(Buf

BufSize);//申请内存,用于获取工作组信息

Res := WNetEnumResource(lphEnum

Count

Pointer(Buf)

BufSize);

If ( Res = ERROR_NO_MORE_ITEMS )//资源列举完毕

or (Res <> NO_ERROR )//执行失败

Then Exit;

P := TNetResourceArray(Buf);

For I := 0 To Count - 1 Do//记录各个网络类型的信息

Begin

NetworkTypeList.Add(p);

Inc(P);

End;

//WNetCloseEnum关闭一个列举句柄

Res := WNetCloseEnum(lphEnum);//关闭一次列举

If Res <> NO_ERROR Then exit;

For J := 0 To NetworkTypeList.Count-1 Do //列出各个网络类型中的所有工作组名称

Begin//列出一个网络类型中的所有工作组名称

NetResource := TNetResource(NetworkTypeList.Items[J]^);//网络类型信息

//获取某个网络类型的文件资源的句柄,NetResource为网络类型信息,lphEnum为返回名柄

Res := WNetOpenEnum(RESOURCE_GLOBALNET

RESOURCETYPE_DISK

RESOURCEUSAGE_CONTAINER

@NetResource

lphEnum);

If Res <> NO_ERROR Then break;//执行失败

While true Do//列举一个网络类型的所有工作组的信息

Begin

Count := $FFFFFFFF;//不限资源数目

BufSize := 8192;//缓冲区大小设置为8K

GetMem(Buf

BufSize);//申请内存,用于获取工作组信息

//获取一个网络类型的文件资源信息,

Res := WNetEnumResource(lphEnum

Count

Pointer(Buf)

BufSize);

If ( Res = ERROR_NO_MORE_ITEMS ) //资源列举完毕

or (Res <> NO_ERROR) //执行失败

then break;

P := TNetResourceArray(Buf);

For I := 0 To Count - 1 Do//列举各个工作组的信息

Begin

List.Add( StrPAS( P^.lpRemoteName ));//取得一个工作组的名称

Inc(P);

End;

End;

Res := WNetCloseEnum(lphEnum);//关闭一次列举

If Res <> NO_ERROR Then break;//执行失败

End;

Result := True;

FreeMem(Buf);

NetworkTypeList.Destroy;

End;

二、列举一个工作组中的计算机名称

在WNetOpenEnum函数中,将参数lpNetResource中的lpRemoteName部分指定为一个工作组的名称(如“MyWorkGroup”),可以获取一个句柄,在WNetEnumResource中利用这个句柄,可以获取一个NetResource类型的数组,每个NetResource元素的lpRemoteName部分即为一个计算机名称(如

“\\wangfajun”)。

具体的请参见以下程序段及注释信息。

NetResource.lpRemoteName := @GroupName[1];//指定工作组名称

NetResource.dwDisplayType := RESOURCEDISPLAYTYPE_SERVER;//显示类型为服务器(工作组)

NetResource.dwUsage := RESOURCEUSAGE_CONTAINER;

NetResource.dwScope := RESOURCETYPE_DISK;//列举文件资源信息

//获取指定工作组的网络资源句柄

Res := WNetOpenEnum( RESOURCE_GLOBALNET

RESOURCETYPE_DISK

RESOURCEUSAGE_CONTAINER

@NetResource

lphEnum);

获取计算机名称的完全程序源代码如下:

//列举出指定工作组GroupName中的计算机名称,返回值为TRUE表示执行成功,

//参数List中返回计算机名称

Function GetUsers( GroupName : string; var List : TStringList ) : Boolean;

Var

NetResource : TNetResource;

Buf : Pointer;

Count

BufSize

Res : DWord;

Ind : Integer;

lphEnum : THandle;

Temp : TNetResourceArray;

Begin

Result := False;

List.Clear;

FillChar(NetResource

SizeOf(NetResource)

0);//初始化网络层次信息

NetResource.lpRemoteName := @GroupName[1];//指定工作组名称

NetResource.dwDisplayType := RESOURCEDISPLAYTYPE_SERVER;//类型为服务器(工作组)

NetResource.dwUsage := RESOURCEUSAGE_CONTAINER;

NetResource.dwScope := RESOURCETYPE_DISK;//列举文件资源信息

//获取指定工作组的网络资源句柄

Res := WNetOpenEnum( RESOURCE_GLOBALNET

RESOURCETYPE_DISK

RESOURCEUSAGE_CONTAINER

@NetResource

lphEnum);

If Res <> NO_ERROR Then Exit; //执行失败

While True Do//列举指定工作组的网络资源

Begin

Count := $FFFFFFFF;//不限资源数目

BufSize := 8192;//缓冲区大小设置为8K

GetMem(Buf

BufSize);//申请内存,用于获取工作组信息

//获取计算机名称

Res := WNetEnumResource(lphEnum

Count

Pointer(Buf)

BufSize);

If Res = ERROR_NO_MORE_ITEMS Then break;//资源列举完毕

If (Res <> NO_ERROR) then Exit;//执行失败

Temp := TNetResourceArray(Buf);

For Ind := 0 to Count - 1 do//列举工作组的计算机名称

Begin

//获取工作组的计算机名称,+2表示删除"\\",如\\wangfajun=>wangfajun

List.Add(Temp^.lpRemoteName + 2);

Inc(Temp);

End;

End;

Res := WNetCloseEnum(lphEnum);//关闭一次列举

If Res <> NO_ERROR Then exit;//执行失败

Result := True;

FreeMem(Buf);

End;

三、列举一个计算机中的共享资源

在WNetOpenEnum函数中,将参数lpNetResource中的lpRemoteName部分指定为一个计算机的名称(如“\\wangfajun”),可以获取一个句柄,在WNetEnumResource中利用这个句柄,可以获取一个NetResource类型的数组,每个NetResource元素的lpRemoteName部分即为计算机中的共享资源名称(可以是共享目录和文件名称、共享打印机名称等,如“\\wangfajun\共享文件”)。

具体的请参见以下程序段及注释信息。

NetResource.lpRemoteName := @UserName[1];//指定计算机名称

//获取指定计算机的网络资源句柄

Res := WNetOpenEnum( RESOURCE_GLOBALNET

RESOURCETYPE_ANY

RESOURCEUSAGE_CONNECTABLE

@NetResource

lphEnum);

获取计算机名称的完全程序源代码如下:

//列举出指定计算机UserName中的共享资源名称,返回值为TRUE表示执行成功,

//参数List中返回共享资源名称

Function GetUserResource( UserName : string ; var List : TStringList ) : Boolean;

Var

NetResource : TNetResource;

Buf : Pointer;

Count

BufSize

Res : DWord;

Ind : Integer;

lphEnum : THandle;

Temp : TNetResourceArray;

Begin

Result := False;

List.Clear;

FillChar(NetResource

SizeOf(NetResource)

0);//初始化网络层次信息

NetResource.lpRemoteName := @UserName[1];//指定计算机名称

//获取指定计算机的网络资源句柄

Res := WNetOpenEnum( RESOURCE_GLOBALNET

RESOURCETYPE_ANY

RESOURCEUSAGE_CONNECTABLE

@NetResource

lphEnum);

If Res <> NO_ERROR Then exit;//执行失败

While True Do//列举指定工作组的网络资源

Begin

Count := $FFFFFFFF;//不限资源数目

BufSize := 8192;//缓冲区大小设置为8K

GetMem(Buf

BufSize);//申请内存,用于获取工作组信息

//获取指定计算机的网络资源名称

Res := WNetEnumResource(lphEnum

Count

Pointer(Buf)

BufSize);

If Res = ERROR_NO_MORE_ITEMS Then break;//资源列举完毕

If (Res <> NO_ERROR) then Exit;//执行失败

Temp := TNetResourceArray(Buf);

For Ind := 0 to Count - 1 do

Begin

//获取指定计算机中的共享资源名称,+2表示删除"\\",

//如\\wangfajun=>wangfajun

List.Add(Temp^.lpRemoteName + 2);

Inc(Temp);

End;

End;

Res := WNetCloseEnum(lphEnum);//关闭一次列举

If Res <> NO_ERROR Then exit;//执行失败

Result := True;

FreeMem(Buf);

End;

把回车键变成TAB键-VB资料 把文件置入到Text或RichText中 -VB资料 避免按 [ENTER] 回车键产生的“嘀”声 -VB资料 避免使用全局变量-VB资料 避免装载多份应用程序-VB资料 不定个数的参数 -VB资料 不在任务栏中显示,只能在Ctrl+Alt+Del对话框中显示或者干脆什么也不显示数 -VB资料 处理 Dropdown List型 Combo的录入问题-VB资料 VB创建和删除快捷方式 从程序中生成 exe 文件 -VB资料 打开和关闭CD-ROM 驱动器 -VB资料 打开和关闭其他应用 -VB资料 打开一个超连接 -VB资料 当前操作系统的语言集-VB资料 当前系统目录-VB资料 得到磁盘上剩余空间的值-VB资料 调用“添加打印机”对话框 -VB资料 调整分辩率和取当前分辩率 -VB资料 定义全局热键-VB资料 动记录应用软件工作时间-VB资料 动态改变屏幕设置-VB资料 读取档案的建立时间及存取时间 -VB资料 多个参数的属性 -VB资料 发现剪帖板的秘密 -VB资料 发现拖(Drap)过来的信息 -VB资料 防止打开同个VB应用多个实例 分割图像的原理 -VB资料 封面的设计 -VB资料 改变 Win95 的 Shell -VB资料 改变墙纸 -VB资料 格式化磁盘 -VB资料 送我能给的最大分,请教很小的问题,中高手进 聊天请进(thinkingdog) 大家来谈谈 IBM都有些什么认证???什么认证现在比较吃香???谢谢!!! 打印数窗问题求助! 如何使用UrlDownloadtoFile下载文件使用进度条? 如何用在两次用getTime()中得到两个不同的时间。 一个类似于牛角尖的问题(多余的CONST),不能忽视,请各位高手详细说明!!谢谢! 怎样读写注册表,每次都不成功,气死我也~! 各位救命啊,用 TClientDataSet.Load XML 的问题。。。。 娃呀呀,pb8怎么这么难安装?jaguar组建就用了5分钟,regester window又用了10分钟,重启动后,还没完,偶不敢装了,把碟退了出来,大家是不是也这样?//牛虻 请教高手一个ado的问题. 请问一个TWebBrowser的问题 请问:系统崩溃后,找不到BOOT,系统告诉:DOS基本分区为格式化?无法引导启动! 在VB.NET的tabcontrol上放置AxMSFlexGrid控件问题,急 java3D 现在大家是用Oracle 8还是 Oracle 9??? C++问题求助! 请教一个错误的原因. 各位大侠请问Jeffrey Richter的windows核心程序设计是不是就是andvanced windows程序设计的第四版 SCJP里的那些什么300-020,020是什么意思啊? 请问一个关于document.write()方法的问题。急啊! 初学者,欢迎灌水。 Delphi6的Bug?不兼容? 为什么我用GetProfileString()却总是得不到结果 sos 请教各位大侠一个问题 delphi6中的installShield 请介绍接收端CRC校验传输内容是否正确的方法,资料或代码。谢谢! 各位大侠请问Jeffrey Richter的windows核心程序设计是不是就是andvanced windows程序设计的第四版? 谁会做软件狗?有钱赚了!!! 为什么我用QuickRep作的报表只能显示一条记录,而且columnHeaderBand上内容也显示不出来 请问在税务局开发数据库的同行么?? 大家好各位大侠请问Jeffrey Richter的windows核心程序设计是不是就是andvanced windows程序设计的第四版? 谁做过软件狗,马上来拿钱!!! 江苏省的成绩什么时候可以出来啊,我是徐州的 shockwaveflash没有hwnd,怎么办? chechy(chechy) 你在吗? 一个关于用excel做的日报的问题 谁会做软件狗,马上来拿钱!!! 给你下跪了,给你磕头了,给你鞠躬了。很简单的问题。谢谢 那位大哥能告诉我在VC中我要创建类的话应该做哪些工作步骤(要详细的,呵呵) 紧急求救,asp连接mysql问题 在使用twebbrowser的时候,怎样制止网页的自动刷新和跳转? vc编译器错了怎么办???突然死机,然后就不好好干了!!谢谢 ?如何将二进制的 值写如注册表? Delphi紧急求助! 我想问的是,返回的 ResultSet 中的某个字段(int 型),如何放到一个 int[]数组里去。因为 ResultSet 不知道怎样取 size,我又不想用 vector, ResultSet的getArray()方法也是莫名其妙。 c盘格式化后,怎样找到linux系统? 有意思 过来研究一下!!!!insert 的!!!!难道 25 不是 long integer 吗 我的程序debug版,一直调试好好的,我rebuid all 一下就出错了,错误如下:怎么回事? 位图问题? 怎样使用自定义的光标??? 把1.5长的竹竿直立在地面,测得竹竿的影子长是1.2米,同时量得一根旗杆的影子是这竹竿影子的6倍还多80厘米求旗杆的长. 肯德基的炸鸡配方全球只有俩人知道?那为什么全球各地的KFC的炸鸡基本是一个味?我没问它是不是垃圾食品,我只想知道,一方面,配方高度保密,另一方面,遍布全球的连锁店却出售同一口味的炸 想了解一下各种气候类型的特点,这不是快要地理生物会考了嘛.认真学习一下. 小明把2.5米的竹竿直立在地上,量得它的影子长度是1.5米.如果同一时间、同一地点量得一根电线的影子长度4.8米.这根电线杆高多少米?用比例解。 在空地上立一根竿子,让竿子被太阳照射,当一天中竿子的最短时,竿子的影子朝什么方向猪头滚从东.南.西.北和东南.西南.东北.西北中选 沼气池建好后,每天会产1万方的沼气提纯成5000方天然气压缩成20兆帕的一个成套设备需要投资多少钱啊?运行费用每立方需要多少成本?(沼气池是无动力运行的,每天自动产1万立方沼气) 为什么西西伯利亚平原多沼泽 一天中,阳光下直立物体影子长短有什么变化?爱你? 沼气提纯的技术设备大概需要多少的资金 根据规范的方法,超声波测砼裂缝的深度最小值是多少?为什么? 看云识天气写了几种云,分别对应什么天气 秋天的落叶宛如什么 混凝土的碳化深度怎么测定 请问以下几种云 是什么云 代表着什么样的天气状况隔着窗户拍的 效果不太好 有污点. 一天中,阳光下物体的影子随气温的升高而缩短,随气温的降低而增长.判断对错判断是对是错 当声波在混凝土内传播穿过裂缝时,在裂缝端点处产生衍射,其衍射角与裂缝深度具有一定的几何关系.BJCS-1型混凝土裂缝测深仪正是依据衍射角与裂缝深度的几何关系,自动计算实现裂缝深度的 表示天气的或云的成语有哪些 汽车牌号都有什么颜色的 车牌号靠前的都是领导的车吗 比如说鲁C00001 A、汶川大地震 B、我国东南地区的超强台风 C、西伯利亚地区大片沼泽的的形成 D、全球范围内的大气污染日益严重 请问上面四个选项中哪一个是由于人类活动对地表形态的破坏而造成的恶 求表示天气的或云的成语 汽车不同颜色的含义 一个太阳,竹竿,竹竿的影子是什么成语 天上云代表什么天气?云的形态各式各样,那每个形状都代表什么天气? 大众汽车后面的TSI字母不同颜色代表什么意思?意向车型:大众 迈腾有的是T是红色的 有的是SI是红色的 有的是I是红色的 垂直竖立在地面上的竹竿,阳光照射下竹竿影子一样长,太阳与地面夹角是多少度 混凝土裂缝怎么处理 压力容器的定期检查分为 阳光下,影子的位置和太阳的位置有什么关系?影子的变化和太阳位置的变化以及时间的变化又有什么关系? 混凝土裂缝的产生混凝土在下列情况下,均能导致其产生裂缝,试解释裂缝产生的原因,并指出主要防止措施.水泥水化热大;水泥安定性不良;大气温度变化较大;碱一骨料反应;混凝土碳化; 压力容器首检周期 kfc的菜单 法国的气候类型 比喻句 什么什么像是什么这道题是这样的:—————————————————,像是——————————————————.不能太简单了,不能像这样:月亮,像是香蕉.这样不给分的, 关于肯德基华莱士,这些仿肯德基的餐厅,点餐都是在菜单上点的,为什么肯德基这些规范的餐厅,点餐反而要在后面的玻璃上点,菜单上的只有套餐却没有单点的,比如一个汉堡包,而且肯德基的套 法国气候类型 秋天的落叶的比喻句有啥?一定要很形容的,很逼真的! 肯德基的全家桶.2014年的新春全家桶有什么(名字)、内容、价格和时间. 法国有什么气候类型?急 我国古代有很多测量时间的工具,你能列举几种仪器的名称吗?请重中选取一种,谈谈其中应用的原理. 西西伯利亚平原与东欧平原同是平原为什么气候差别如此大 法国的气候具有什么特点? 一道很麻烦的数学题,摆脱各位牛X人士,回答沙漏又称沙钟,是我国古代一种计量时间的仪器,它是题目如下沙漏又称沙钟,是我国古代一种计量时间的仪器,它是根据流沙从一个容器漏到另一个容 紧急!谁能提供标准GB/T3274-2007里的(普通轧制精度)数值.普通钢板的厚度偏差范围是多少? 东欧平原和西西伯利亚平原的地理环境区别 秋天的落叶,散文开头,落叶的描写我只要一小段开头,很有意境的那种,不要敷衍, GB/T3274-2007 数值Q235B主要问尺寸标准 东欧平原和西西伯利亚平原哪个大?还有为什么在世界地形图上看东欧平原和西西伯利亚都比亚马孙平原大?最好简洁一点! 谁能写《秋天的落叶》作文(纯属自写,不能和其他重复). 钢板选N类,A类,B类,C类的原则是什么?GB/T709-2006中的钢材厚度偏差分类. 中西伯利亚平原,西西伯利亚高原为什么要以西伯利亚命名 世界上最深的地震裂缝有多深?哪些地震裂缝超深? 各位老大,请问GB/T3274与GB/T709都是钢板标准,他们有什么区别? 为什么 肯德基配方 地震时造成大地出现裂缝然后那个裂缝是怎样补救的不过我还有一点不明白,就是沙的空隙会有很多'而地震时裂开的缝隙应该是土'然而给他灌沙他起不了很大的坚固性啊. GB 10055-2007这个标准谁有啊? 我想知道肯德基的配方 什么是地震深度? 太阳光斜照地面,光线与水平面所成的角为b,长为l的竹竿与地面所成的角为a,当a为多少时,竹竿的影子最长 KFC的热橙汁的配料是什么?为什么我用雀巢的橙汁加方糖却调配不出kfc里的那种味道.橙汁粉放少了,觉得味道不浓,橙汁粉放多,又觉得味道很酸,加了糖或者方糖,又感觉太甜?到底kfc里是怎么配 地震时产生地面裂缝 裂缝下面是什么了?如题 为什么人掉下去之后会怎么样呢?
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn