我用D7+ADO+INTRAWEB编程,运行是出错“未调用COINITIALIZE”,但在哪个UNIT中调用?无论我怎样调用COINITIALIZE,总是说“未调用”,请高手明示代码,100分就给他。我的代码如下:工程文件
program user;uses
  Forms,
  IWMain,
  ServerController in '..\source\ServerController.pas' {IWServerController: TIWServerController},
  DataModuleUnit in '..\source\DataModuleUnit.pas' {DataModule1: TDataModule},
  main in '..\source\main.pas' {IWForm1: TIWFormModuleBase};{$R *.res}begin
  Application.Initialize;
  Application.CreateForm(TformIWMain, formIWMain);
  Application.Run;end.主窗口:
unit main;interfaceuses
  Classes, SysUtils, IWAppForm, IWApplication, IWTypes, Controls,
  IWBaseControl, IWControl, IWGrids, IWDBGrids;type
  TIWForm1 = class(TIWAppForm)
    IWDBGrid1: TIWDBGrid;
  public
  end;implementation{$R *.dfm}uses
  ServerController, DataModuleUnit;
initialization
  TIWForm1.SetAsMainForm;
end.控制台:
unit ServerController;interfaceuses
  SysUtils, Classes,IWServerControllerBase, IWBaseForm, HTTPApp,
  // For OnNewSession Event
  DataModuleUnit, IWApplication, IWAppForm;type
  TIWServerController = class(TIWServerControllerBase)
    procedure IWServerControllerBaseNewSession(ASession: TIWApplication;
      var VMainForm: TIWBaseForm);
  private
  public
  end;  TUserSession = class(TComponent)
  public
    DataModule1: TDataModule1;
    constructor Create(AOwner: TComponent); override;
  end;// Procs
  function UserSession: TUserSession;implementation
{$R *.dfm}uses
  IWInit;function UserSession: TUserSession;
begin
  Result := TUserSession(WebApplication.Data);
end;procedure TIWServerController.IWServerControllerBaseNewSession(
  ASession: TIWApplication; var VMainForm: TIWBaseForm);
begin
  ASession.Data := TUserSession.Create(nil);
end;constructor TUserSession.Create(AOwner: TComponent);
begin
  inherited;
  DataModule1 := TDataModule1.Create(Self);
end;initialization
  TIWServerController.SetServerControllerClass;
end.数据模块:
unit DatamoduleUnit;interfaceuses
  {$IFDEF Linux}QForms, {$ELSE}Forms, {$ENDIF}
  SysUtils, Classes, DBTables, DB, ADODB;type
  TDataModule1 = class(TDataModule)
    DataSource1: TDataSource;
    Session1: TSession;
    query1: TADOQuery;
    query1bianhao: TWideStringField;
    query1username: TWideStringField;
    query1tel: TWideStringField;
    query1fax: TWideStringField;
    query1email: TWideStringField;
    query1contactor: TWideStringField;
    query1city: TWideStringField;
    procedure DataModuleCreate(Sender: TObject);
  private
  public
  end;// Procs
  function DataModule1: TDataModule1;implementation
{$R *.dfm}uses
  IWInit,
  ServerController;.
function DataModule1: TDataModule1;
begin
  Result := TUserSession(WebApplication.Data).Datamodule1;
end;procedure TDataModule1.DataModuleCreate(Sender: TObject);
begin
query1.open;
end;end.