Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.07.2014, 23:14   #11
AppData
Форумчанин
 
Регистрация: 20.09.2013
Сообщений: 248
По умолчанию

Stilet, как я уже писал ранее. к сожалению windows будет на всех языках. от китайского до английского. от французского и русского. поэтому нужен именно функция. а не поиск по ключевым словам. очень надеюсь на вашу помощь. надеюсь мне здесь помогут!
AppData вне форума Ответить с цитированием
Старый 20.07.2014, 23:51   #12
Vapaamies
Просветитель
Участник клуба
 
Аватар для Vapaamies
 
Регистрация: 26.12.2012
Сообщений: 1,834
По умолчанию

Цитата:
Сообщение от AppData Посмотреть сообщение
Stilet, спасибо что активно помогаете мне. но увы. см скрин
Значение может не читаться из-за 64-битной ОС. По скрину вижу, что Delphi 7. По-хорошему надо бы собрать 64-битное приложение в Delphi XE2+, а потом пороть горячку.

Из-под Delphi 7 можно попробовать вызвать Wow64DisableWow64FsRedirection, но я сомневаюсь, что поможет.

Как, с разрядностью ОС угадал? Код Stilet-а под 32-битной XP у меня работает.
В разработке: воспроизводственный контур ИТ
Vapaamies вне форума Ответить с цитированием
Старый 21.07.2014, 00:44   #13
Человек_Борща
Старожил
 
Аватар для Человек_Борща
 
Регистрация: 30.12.2009
Сообщений: 11,430
По умолчанию

Через WMI что угодно можно вытворять... держите халяву:
Код:
function WMI_NormalizeDaeTime(vDate: OleVariant): TDateTime;
var
  FWbemDateObj: OleVariant;
begin;
  FWbemDateObj := CreateOleObject('WbemScripting.SWbemDateTime');
  FWbemDateObj.Value := vDate;
  Result := FWbemDateObj.GetVarDate;
end;

function GetWMI_OSInstallDate: string;
var
  FSWbemLocator: ISWbemLocator;
  FWMIService: ISWbemServices;
  FWbemObjectSet: ISWbemObjectSet;
  FWbemObject: ISWbemObject;
  FWbemPropertySet: ISWbemPropertySet;
  TempObj: OleVariant;
  oEnum: IEnumvariant;
  iValue: Cardinal;
  val: OleVariant;
begin
  Result := '';
  FSWbemLocator := CoSWbemLocator.Create;
  FWMIService := FSWbemLocator.ConnectServer('localhost', 'root\CIMV2', '', '',
    '', '', 0, nil);
  FWbemObjectSet := FWMIService.ExecQuery('SELECT * FROM CIM_OperatingSystem',
    'WQL', $00000020, nil);
  oEnum := IUnknown(FWbemObjectSet._NewEnum) as IEnumvariant;
  while oEnum.Next(1, TempObj, iValue) = 0 do
  begin
    FWbemObject := IUnknown(TempObj) as ISWbemObject;
    FWbemPropertySet := FWbemObject.Properties_;
    val := FWbemPropertySet.Item('InstallDate', 0).Get_Value;
    if VarIsNull(val) then
      break
    else
    begin
      Result := DAteTimeToStr(WMI_NormalizeDaeTime(val));
      break;
    end;
    TempObj := Unassigned;
  end;
end;
В качестве ДЗ, сами разберитесь какую ActiveX библиотеку надо импортировать из системы

Приложил exe, проверьте у себя.

Stilet, с чего бы это вдруг WMI будет отсутствовать на ПК?
Вложения
Тип файла: zip WMI_OSInstallDate.zip (484.1 Кб, 8 просмотров)

Последний раз редактировалось Человек_Борща; 21.07.2014 в 01:05.
Человек_Борща вне форума Ответить с цитированием
Старый 21.07.2014, 08:03   #14
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
с чего бы это вдруг WMI будет отсутствовать на ПК?
Та не отсутствовать, а отключено. Или по безопасности локальных политик или по урезанности винды. У меня на работе два таких компа с ДВДЗверем. Там WMI от ворот поворот дает.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 21.07.2014, 09:01   #15
AppData
Форумчанин
 
Регистрация: 20.09.2013
Сообщений: 248
По умолчанию

Человек_Борща, огромное спасибо. а вот как сделал я)

Код:
Caption := (DateTimeToStr(GetDirTime(GetSpecialFolderPath($28))));
результат 1:1 такой же. дата и время)

но все же, твой вариант ЛУЧШЕ. Огромное Спасибо)

ОЧЕНЬ БЛАГОДАРЕН ВСЕМ КТО ПРИМИНАЛ УЧАСТИЕ.
AppData вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
узнать дату установки ОС на компьютере megostudent Общие вопросы Delphi 20 30.11.2015 19:21
Получить дату вчера на пхп Lokos PHP 3 15.08.2013 10:04
Получить выбранную дату Vladya Помощь студентам 9 09.02.2013 09:34
Получить дату из строки. KiRx Microsoft Office Excel 3 19.06.2010 19:53
Определить версию ОС, дату установки и последнего перезапуска Manonia Общие вопросы Delphi 4 22.03.2010 18:33