PDA

Visualizza la versione completa : [DELPHI] Internet Get Connected State


lightning0
18-04-2004, 21:38
Ciao a tutti, su internet ho trovato questo, della winInet API:

InternetGetConnectedState
Retrieves the connection state of the local system.

function InternetGetConnectedState(
var lpdwFlags: DWORD;
dwReserved: DWORD): BOOL;
Parameters:

lpdwFlags
On exit holds a combination of flags (or-ed together) giving the connection status of the locate system:
INTERNET_CONNECTION_CONFIGURED
Local system has a valid connection to the Internet, but it might or might not be currently connected.
INTERNET_CONNECTION_LAN
Local system uses a local area network to connect to the Internet.
INTERNET_CONNECTION_MODEM
Local system uses a modem to connect to the Internet.
INTERNET_CONNECTION_OFFLINE
Local system is in offline mode.
INTERNET_CONNECTION_PROXY
Local system uses a proxy server to connect to the Internet.
INTERNET_RAS_INSTALLED
Local system has RAS installed.
dwReserved
Not currently used. Must be set to 0.
Returns: True if there is an Internet connection, False otherwise.


Io vorrei fare un controllo per vedere se il pc connesso o no... Dato che solo ieri ho iniziato a leggere qlk guida sul delphi, nn so fare quesi niente. chi mi aiuta x utilizzare questa funzione?

vorrei fare una cosa di questo tipo:

if(InternetGetConnectedState=True) then showmessage('Pc connesso')
else ('Pc non connesso');


p.s. la function dove devo metterla??(in che punto del codice???)

AlbertoPicca
18-04-2004, 23:15
Puoi utilizzare la funzione API in questo modo:


if InternetGetConnectedState(INTERNET_CONNECTION_MODE M, 0) then showmessage('Pc connesso')
else ('Pc non connesso');


In questo caso passi come primo parametro lo stato che identtifica la tua connessione.
Hai una scelta tra :
INTERNET_CONNECTION_CONFIGURED
Local system has a valid connection to the Internet, but it might or might not be currently connected.
INTERNET_CONNECTION_LAN
Local system uses a local area network to connect to the Internet.
INTERNET_CONNECTION_MODEM
Local system uses a modem to connect to the Internet.
INTERNET_CONNECTION_OFFLINE
Local system is in offline mode.
INTERNET_CONNECTION_PROXY
Local system uses a proxy server to connect to the Internet.
INTERNET_RAS_INSTALLED
Local system has RAS installed.

Mentre, come secondo parametro da passare sei costretto, come da indicazione, a utilizzare lo 0.

La funzione puoi inserirla nell'evento OnClick di un ipotetico TButton definito nella tua form.

:ciauz:

lightning0
19-04-2004, 14:14
ho provato a fare un programma in modo che all'esecuzione visualizzi il msg per lo stato... ecco il codice. il problema che mi da questi errori:

[Error] Unit1.pas(31): Types of actual and formal var parameters must be identical
[Error] Unit1.pas(17): Unsatisfied forward or external declaration: 'TForm1.InternetGetConnectedState'
[Fatal Error] Project1.dpr(5): Could not compile used unit 'Unit1.pas'

------------------------------------------

unit Unit1;

interface

uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs,WinInet;

type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
private
{ Private declarations }

public
{ Public declarations }
function InternetGetConnectedState(var lpdwFlags: DWORD;dwReserved: DWORD): BOOL;
end;

var
Form1: TForm1;

implementation

{$R *.dfm}


procedure TForm1.FormCreate(Sender: TObject);

begin
if InternetGetConnectedState(INTERNET_CONNECTION_MODE M, 0) then showmessage('Pc connesso')
else showmessage('Pc non connesso');
end;

end.

--------------------------------------

che faccio???

grazie x l'aiuto...


p.s. mi servirebbe sapere anke come si crea un file, anke vuoto, meglio se senza estenzione. mi server solo x fare dei controlli...

lightning0
19-04-2004, 17:08
dai, qlcn mi quo dare una mano... mi serve il prima possibile, sia per la funzione che per creare un file vuoto...

lightning0
19-04-2004, 19:36
ok ragzzzi sono riuscito a capire lo stato di connessione ora mi servirebbe un modo per creare un file vuoto senza estensione!

grazie.. ciao

Loading