beta 求教:关于如何在浏览器上画图表 和 VB 应用程序运行的最小环境(300分)

B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
老师让做一个东西:从某数据库中取出 XML 数据然后将相应的图线或图表画在浏览器中
(封装为 ActiveX 控件)。

根据我的感觉,要画什么东西,要先取得目标的句柄,然后用 API 搞定。可是现在这种
情况下怎么获取相应的句柄?或者根本就不是这个思路,另有它法(Active Form 是不
是干这个事的)?请知情富翁指教。或提供简单的例子。

麻烦的是人家要求一定要用 VB 做。虽说熟悉 VB 的环境和语法也就一袋烟的功夫,但是
要搞清楚 VB 怎么操作 COM 恐怕还得一袋烟的功夫。不过这都没什么,在书店站一个下
午就搞定了。但是老师让我先调查一下 VB 应用程序运行的最小环境,具体到这里就是做
出来的这个控件要能够移植到其他没有装 VB 运行库的机器上需要哪些 dll?有多大?

 
Z

ZRWeng

Unregistered / Unconfirmed
GUEST, unregistred user!
用ActiveX应该是干这种是的吧,VB运行库肯定是要的
 
8

816

Unregistered / Unconfirmed
GUEST, unregistred user!
为什么不用DELPHI写?VB太鸟了。
听说你在找我?有什么事?
你的心得什么时候发表啊。
可惜我不会VB。帮不上你。
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
//为什么不用DELPHI写?VB太鸟了。
VB 鸟不鸟我不置可否,这不是我能改变的:(
老师也是接的别人的项目,听说是因为原来的系统
就是用 VB 写的,所以这次增加的功能插件也需要
用 VB 写:(

那我想问一下 Active Form 的一些优缺点什么的。
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
//听说你在找我?有什么事?
什么时候?如果是刚才,那就是问这个事情:)
 
C

creation-zy

Unregistered / Unconfirmed
GUEST, unregistred user!
TeeChart控件的OCX版可以吗?——在服务器端用ASP生成图像或者在客户端用JS/VBS生成均可。
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
多谢 creation-zy 兄。
//TeeChart控件的OCX版可以吗?
那我得去问一下使用(浏览器)的人是否会注册 ocx

//在服务器端用ASP生成图像或者在客户端用JS/VBS生成均可
人家一定要包装成 ActiveX 控件:(


Active Form 效率如何?
 
T

testnet

Unregistered / Unconfirmed
GUEST, unregistred user!
可以用这个函数一层层慢慢找句柄
The GetParent function retrieves the handle of the specified child
window's parent window.
一定要用 VB 做??VB就是詷用COM控件,IE同样可以调用,为什么还要这么复杂。
>>具体到这里就是做
>>出来的这个控件要能够移植到其他没有装 VB 运行库的机器上需要哪些 dll,
找个安装程序软件来,他帮你搞定。
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
//一定要用 VB 做??VB就是詷用COM控件,IE同样可以调用,为什么还要这么复杂。
因为原来的系统就是用 VB 写的,所以这次增加的功能插件也需要用 VB 写:(

//找个安装程序软件来,他帮你搞定。
它是可以自动判断一个exe or dll用到了哪些运行库,然后有选择地包含进去,
还是直接就将整个 VB 运行库打包进去?
如果我自己把整个 VB 运行库全部包进去,要占多大空间

 
T

testnet

Unregistered / Unconfirmed
GUEST, unregistred user!
这是我在Wise中找的
The Import VB Project tool reads your VB project file and searches for
all files it refers to. Always verify that the necessary files and dependency
files required by your VB application are available. Verify that the files that
require self-registration are marked to self-register. To check this, look at
the properties of the file, and if the version section contains Ole Self
Register, then the file needs to be self registered. A file might fail
self-registration because it doesn't need to be registered, because it's
missing a dependent file, because it might require regsvr.exe to be run
manually, or because it is corrupt.
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
多谢 testnet
了解。顺便问一下完整的 VB 运行库大概多大?

关于 Active Form 大家没有什么要谈的吗?:(
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
VB6RUN.DLL最少,就2M不到吧,WIN98以上自带,
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
多谢 kkyy
 
K

kkyy

Unregistered / Unconfirmed
GUEST, unregistred user!
VB可新建专门的项目用于WEB什么的,不过我没用过那些功能,不好乱说,
但是VB的功能也很强大,象做个COM之类的,还比DELPHI要快多了,绝不象有些人说的那么不值一提,
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
//绝不象有些人说的那么不值一提
呵呵,还好我从来没有这样说过:)
 
S

sky2008

Unregistered / Unconfirmed
GUEST, unregistred user!
beta兄

图书馆有本<Delphi网络应用开发技术与实例>
有个比较好的Active From的例子
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
多谢 sky2008,我去找一下,虽说要用 VB 写,不过应该还是
很有参考价值的。

 
S

sky2008

Unregistered / Unconfirmed
GUEST, unregistred user!
呵呵

原来你也在线
可留下你的电子信箱?

zhijie.lee@163.com
 
B

beta

Unregistered / Unconfirmed
GUEST, unregistred user!
xbeta#(162+1).net
(一段时间没有收信了[:D])

 

小雨哥

Unregistered / Unconfirmed
GUEST, unregistred user!
使用 MSXML 啊。在 VB 中引入类型说明:
from within Visual Basic 6.0:
1.Open the Project References dialog box.
2.Select Microsoft XML, version 2.0 from the list of available COM objects.
If you do not find this item, you'll need to obtain the MSXML library.
3.You can then create an instance of the Parser object.
To load an XML document, you must first create an instance of the DOMDocument class:

Public Sub LoadDocument()
Dim xDoc As MSXML.DOMDocument
Set xDoc = New MSXML.DOMDocument
xDoc.validateOnParse = False
If xDoc.Load("C:/My Documents/sample.xml") Then
' The document loaded successfully.
' Now do something intersting.
DisplayNode xDoc.childNodes, 0
Else
' The document failed to load.
' See the previous listing for error information.
End If
End Sub

Public Sub DisplayNode(ByRef Nodes As MSXML.IXMLDOMNodeList, _
ByVal Indent As Integer)

Dim xNode As MSXML.IXMLDOMNode
Indent = Indent + 2

For Each xNode In Nodes
If xNode.nodeType = NODE_TEXT Then
Debug.Print Space$(Indent) &amp
xNode.parentNode.nodeName &amp
_
":" &amp
xNode.nodeValue
End If

If xNode.hasChildNodes Then
DisplayNode xNode.childNodes, Indent
End If
Next xNode
End Sub
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
1K
DelphiTeacher的专栏
D
D
回复
0
查看
881
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
顶部