17. februar 2002 - 10:33
												Der er
									1 kommentar													og
					1 løsning									
									
		 
		
			
Detektering af antal comporte
			Hej!
Jeg skal bruge en rutine der kan fortælle mig hvilke comporte der er tilgængelige i windows ikke kun i bios'en. Der findes jo nye serielkort der deler IRQ og som ikke detekteres af bios'en. Det er ikke nok kun at kunne detektere 2 comporte, jeg skal gerne kunne finde 1-18 comporte. Jo der er stadig nogen der bruger comporte ;-)
					
		
	 
		
								
					
				17. februar 2002 - 11:06
				#1
						
		 
		
			Jeg ved godt det er en lidt fake løsning.
Anyway, here we go
 function ComPortAvailable(Port: PChar): Boolean;
var
  DeviceName: array[0..80] of Char;
  ComFile: THandle;
begin
  StrPCopy(DeviceName, Port);
  ComFile := CreateFile(DeviceName, GENERIC_READ or GENERIC_WRITE, 0, nil,
    OPEN_EXISTING,
    FILE_ATTRIBUTE_NORMAL, 0);
  Result := ComFile <> INVALID_HANDLE_VALUE;
  CloseHandle(ComFile);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
  if ComPortAvailable('COM1:') then
  listbox1.Items.Add('COM1');
   if ComPortAvailable('COM2:') then
  listbox1.Items.Add('COM2');
  if ComPortAvailable('COM3:') then
  listbox1.Items.Add('COM3');
  // osv
end;
Stoney
		
		
	 
	
		
								
					
				17. februar 2002 - 12:08
				#2
						
		 
		
			Hej Stoney!
Ja nu har jeg rodet rundt for at finde en løsning, og jeg tror faktisk ikke at din løsning er så fake. For så vidt jeg har fundet ud af så er det da vist den eneste måde, og som du jo nok kender overser man noglegange løsningen selvom den er lige foran en. Takker
Pointene er dine