Прошу слишком не пинать слабо знаком с COM, OLE:
Есть строчки программы  на VBS: 
 Set objExcel = CreateObject("Excel.Application")
 или 
 Set adoCommand = CreateObject("ADODB.Command") 
 или 
 Set adoConnection = CreateObject("ADODB.Connection") 
Если  это переписать на FreePascal (Lazarus)
 будет 
  objExcel := CreateOleObject('Excel.Application');
  adoCommand := CreateOleObject('ADODB.Command'); 
  adoConnection := CreateOleObject('ADODB.Connection');
А вот как перевести c VBS на FreePascal (Lazarus)
  Стоки
   Set objUser = GetObject("LDAP://" & сUserPath )
   Set obj = GetObject("WinNT://" & ..... )
   Set obj = GetObject("WinMgmts:") ?   
   GetActiveOleObject Явно  не подходит.....
   Вот если objExcel := GetActiveOleObject('Excel.Application',....);
   то  ПРИ ЗАПУЩЕННОМ Excel, найдет его экземпляр
   А вот то что перечисленно выше....
			
		

