FreeBasic: Kleinigkeiten
SleepAPI
Bearbeiten 'Declare Sub Sleep Lib "kernel32" (Byval dwMilliseconds As Long)
Declare Sub SleepAPI Lib "kernel32" Alias "Sleep" (ByVal dwMilliseconds As Integer)
Dim time1 As Single
Dim time2 As Single
dim x as single
screen 12
for i=1 to 20
time1 = Timer
SleepAPI 1156
time2 = Timer
? time2 - time1
next i
Sleep
Dieser Quellcode wurde von MichaelFrey am 11.06.2006 mit der Freebasic Version 0.16 Beta getestet.
Wie lange läuft der Computer?
BearbeitenWinAPI
Bearbeiten Declare Function GetTickCount Lib "kernel32" alias "GetTickCount" () As Long
? GetTickCount()
sleep
Dieser Quellcode wurde von MichaelFrey am 11.06.2006 mit der Freebasic Version 0.16 Beta getestet.
Timer
Bearbeiten ? timer
sleep
Dieser Quellcode wurde von MichaelFrey am 11.06.2006 mit der Freebasic Version 0.16 Beta getestet.
INPOUT32.dll
Bearbeiten dim library as integer
dim OUT32 as sub ( byval Adresse AS INTEGER, byval Wert AS INTEGER)
library = dylibload( "INPOUT32.dll" )
Out32 = dylibsymbol( library, "Out32" )
screen 12
if( library = 0 ) then
print "INPOUT32.dll nicht gefunden."
end 1
end if
for i=0 to 255
out32(888,i)
sleep 1000
Next i
URLDownloadToFile
Bearbeiten Dim URLDownloadToFile as function (_
ByVal pCaller As Long, _
ByVal szURL As zString ptr, _
ByVal szFileName As zString ptr, _
ByVal dwReserved As Long, _
ByVal lpfnCB As Long) As Long
Dim lR As Long
Dim sURL As String
Dim sFile As String
library = dylibload( "urlmon.dll" )
URLDownloadToFile = dylibsymbol( library, "URLDownloadToFileA" )
sURL = "http://de.wikibooks.org"
sFile = "C:\test.htm"
lR = URLDownloadToFile(0, sURL, sFile, 0, 0)
If lR = 0 Then
Print "Download erfolgreich!"
Else
Print "Fehler beim Download!"
End If
sleep
Fenster verstecken
BearbeitenKonsolen Fenster
Bearbeiten'' Anmerkung:
'' Lässt sich nicht mit -s gui kompilieren, da sonst gar kein Konsolenfenster mehr existiert
''
'' Lauffähig unter CVS 0.18
''
'' (PMedia)
#include "Windows.bi"
Dim hWndConsole As HWND
Dim FensterName As String
FensterName=Command$(0)
hWndConsole = FindWindow(0, strptr(FensterName))
Sleep 1000
ShowWindow(hWndConsole, SW_HIDE) 'weg ist es
Sleep 1000 'für eine Sekunde
ShowWindow(hWndConsole, SW_SHOW) ' und nun ist es wieder da
Sleep 'und wartet auf einen Tastendruck.
Dieser Quellcode wurde von PMedia am 18.07.2007 mit der Freebasic Version 0.18 CVS getestet.
#include "Windows.bi"
Dim hWndConsole As HWND
Dim FensterName$
FensterName$=Command$(0)
hWndConsole = FindWindow(0, strptr(FensterName$))
Sleep 1000
ShowWindow(hWndConsole, SW_HIDE) 'weg ist es
Sleep 1000 'für eine Sekunde
ShowWindow(hWndConsole, SW_SHOW) ' und nun ist es wieder da
Sleep 'und wartet auf einen Tastendruck.
Dieser Quellcode wurde von MichaelFrey am 16.06.2006 mit der Freebasic Version 0.16 Beta getestet.
Grafik Fenster
Bearbeiten #include "Windows.bi"
Dim hWndConsole As HWND
screen 12
WindowTitle "Verschwinde!"
hWndConsole = FindWindow(0, strptr("Verschwinde!"))
Sleep 1000
ShowWindow(hWndConsole, SW_HIDE) 'weg ist es
Sleep 1000 'für eine Sekunde
WindowTitle "Wieder da"
ShowWindow(hWndConsole, SW_SHOW) ' und nun ist es wieder da
Sleep 'und wartet auf einen Tastendruck.
Dieser Quellcode wurde von MichaelFrey am 16.06.2006 mit der Freebasic Version 0.16 Beta getestet.
Jederzeit Beenden
BearbeitenDim shared as integer x, y
Dim shared thread As Any ptr
Declare sub ender()
Screen 19
Thread=threadcreate(@ender)
do
GetMouse x,y
Locate 1,1
?Using "####";x;"####";y
Loop
ThreadWait(Thread)
end
sub ender()
Do
Loop until multikey(&H1) ' Escape taste
End
end Sub
Dieser Quellcode wurde von Rens_van_schie am 31.10.2007 mit der Freebasic Version 0.18.3 getestet.