Модераторы: Poseidon, Snowy, bems, MetalFan
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> поиск по реестру 
:(
    Опции темы
npr2
Дата 20.5.2004, 09:53 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Помогите, плиз! Как программно найти в реестре записи о портах СОМ, на разных компьютерах находятся в различных ветвях. Я пишу
reg:=TRegistry.Create;
reg.RootKey:=HKEY_LOCAL_MACHINE;
reg.OpenKey('hardware\devicemap\serialcomm',false);
Как написать путь, конкретный для данной машины программно, т.к на некоторых компьюторах путь
hardware\description\system\multifunctionadapter\4\serialcontroller\kk , где кк- номер порта.
  Вверх
Akella
Дата 25.5.2004, 08:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Творец
****


Профиль
Группа: Модератор
Сообщений: 18485
Регистрация: 14.5.2003
Где: Корусант

Репутация: 36
Всего: 329



Как узнать имена установленных в системе COM-портов?
Код

uses Registry;  

procedure TForm1.Button1Click(Sender: TObject);  
var  
 reg : TRegistry;  
 ts : TStrings;  
 i : integer;  
begin  
 reg := TRegistry.Create;  
 reg.RootKey := HKEY_LOCAL_MACHINE;  
 reg.OpenKey('hardware\devicemap\serialcomm',  
             false);  
 ts := TStringList.Create;  
 reg.GetValueNames(ts);  
 for i := 0 to ts.Count -1 do begin  
   Memo1.Lines.Add(reg.ReadString(ts.Strings[i]));  
 end;  
 ts.Free;  
 reg.CloseKey;  
 reg.free;  
end;


взято из DRKB
Добавлено @ 08:04
Как найти список параллельных портов?
Код

function PortExists(const PortName: string): Boolean;
var
 hPort: HWND;
begin
 Result := False;
 hPort := CreateFile(PChar(PortName), {name}
   GENERIC_READ or GENERIC_WRITE, {access attributes}
   0, {no sharing}
   nil, {no security}
   OPEN_EXISTING, {creation action}
   FILE_ATTRIBUTE_NORMAL or
   FILE_FLAG_OVERLAPPED, {attributes}
   0); {no template}
 if hPort <> INVALID_HANDLE_VALUE then
 begin
   CloseHandle(hPort);
   Result := True;
 end;
end;

{Parallel Ports}
for i := 1 to 9 do
begin
 if PortExists('LPT' + IntToStr(i)) then
   List.Append('Ports: Printer Port (LPT' + IntTostr(i) + ')');
end;


взято из DRKB
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: Общие вопросы"
SnowyMetalFan
bemsPoseidon
Rrader

Запрещается!

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Дельфи обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0415 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.