我正在解析一些第三方软件“脚本”,它会根据其内容生成 GUI 表单,我想在 C# 程序中读取脚本并产生类似的输出,这是一个示例脚本:
BEGIN SECTION Intro
BACKPICTURE=xxxx.gif
PICTUREPOSN=Center
BEGIN CONTROL CLI
IS RADIO=NO
CLSID={49EBC3A3-727D-11CF-9BB9-080000001311}
POSITION=(24,16,250,45)
QUESTION=@0:232
BEGIN PROPERTY Title
DISPID=2
SETTING=CLI :
TYPE=BSTR
END PROPERTY
BEGIN PROPERTY Arrangement
DISPID=3
SETTING=1
TYPE=I4
END PROPERTY
BEGIN PROPERTY EditBoxLength
DISPID=4
SETTING=3
TYPE=I4
END PROPERTY
我感兴趣的属性是BEGIN CONTROL
,BEGIN PROPERTY
因为这些表示 ActiveX 控件的开始及其属性。
我的问题:如何通过它的 CLSID 加载这个 ActiveX 控件并设置它的属性?Type.GetTypeFromCLSID
似乎是我想要的,当我使用它时它不会抛出任何异常,Activator.CreateInstance(Type)
所以它必须创建一个有效的实例,但是一个集合是属性,然后将这个控件“绘制”到 Windows 窗体?
谢谢。