Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.07.18;
Скачать: [xml.tar.bz2];

Вниз

Удаление из памяти Excel   Найти похожие ветки 

 
r9000   (2004-07-02 08:31) [0]

Добрый день!

Не могли бы вы сказать, как можно удалить из памяти Excel?
Т.е. делаю так
if OpenDialog1.Execute then
begin
  ea:=CreateOleObject("Excel.Application");
  WB:=ea.WorkBooks.open(OpenDialog1.FileName,true);
  s:=WB.sheets[1].cells[1,2].value;
  for j:=2 to 3000 do
  begin
  s1:=WB.sheets[1].cells[j,1].value;
  s2:=WB.sheets[1].cells[j,2].value;
  s3:=WB.sheets[1].cells[j,3].value;
  s4:=WB.sheets[1].cells[j,4].value;
  Application.ProcessMessages;
  if (s1<>"") or (s2<>"") or (s3<>"") or (s4<>"") then
  begin
  ADOQuery1.Close;
  ADOQuery1.SQL.Clear;
  ADOQuery1.SQL.Add("insert into a_trunk (Route,System_,NA,ATS) VALUES("""+s1+""","""+s2+""","""+s3+""","""+s4+""")");
ADOQuery1.ExecSQL;end;

  end;
   ea.visible:=true;
вручную закрываю Excel, а он остается в памяти. Что делать?
Как его убрать?


 
Думкин ©   (2004-07-02 08:35) [1]

var
   Excel : OleVariant;
   AppProgID : string;
   ServerIsRunning : boolean;
   Result : HResult;
   Unknown : IUnknown;
begin
    AppProgID := "Excel.Application";
    ServerIsRunning := false;
    Result := GetActiveObject(ProgIDToClassID(AppProgID),nil,Unknown);
    if Result = MK_E_UNAVAILABLE
     then Excel := CreateOleObject(AppProgID)
     else begin
       Excel := GetActiveOleObject(AppProgID);
       ServerIsRunning := true
     end;
    Excel.Visible := true;
    .....
    finally
     if not ServerIsRunning then Excel.Quit;
     Excel := Unassigned
    end;


У Тенцера сие.


 
Думкин ©   (2004-07-02 08:37) [2]

Да, try надо еще всунуть перед одной строкой.


 
r9000   (2004-07-02 08:58) [3]

Ругается на строчку
Result := GetActiveObject(ProgIDToClassID(AppProgID),nil,Unknown);


 
КаПиБаРа ©   (2004-07-02 09:11) [4]

Как ругается?


 
r9000   (2004-07-02 09:13) [5]

Необьявленный идентификатор


 
КаПиБаРа ©   (2004-07-02 09:26) [6]

..пииип.. Какой? Полный текст ошибки.


 
begin...end ©   (2004-07-02 09:28) [7]

uses ?


 
Думкин ©   (2004-07-02 09:30) [8]

ComObj, ActiveX,


 
Iconka ©   (2004-07-02 09:42) [9]

Мне нравится название темы :)
Я тоже хочу забыть этот Excel, Word и другие страшные слова....


 
r9000   (2004-07-02 11:34) [10]

Спасибо получилось!



Страницы: 1 вся ветка

Форум: "Основная";
Текущий архив: 2004.07.18;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.036 c
1-1089163683
Артем К.
2004-07-07 05:28
2004.07.18
Как сделать прозрачный Edit?


14-1088489953
Nikolay M.
2004-06-29 10:19
2004.07.18
Работа IT-шника в софтовой компаниий vs работа на бизнес - ?


8-1083567552
gagarin
2004-05-03 10:59
2004.07.18
Цвет в 32-битном режиме


4-1086198608
Lessa
2004-06-02 21:50
2004.07.18
Кнопка ПУСК


4-1086370051
temp2
2004-06-04 21:27
2004.07.18
Как закрыть стороннее приложение? Есть например C: Program





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский