Beep aus einem Datamodule ?
Beep aus einem Datamodule ?
Ich möchte aus einem Programm, dass zwecks "Unsichtbarkeit" nur ein Datamodule enthält, einen Beep absetzen, um auf eine MessageBox-Meldung aufmerksam zu machen. Beim Kompilieren erhalte ich dann aber diese Fehlermeldung:
Datamodule.pas(187,3) Error: Wrong number of parameters specified for call to "Beep"
Datamodule.pas(207) Fatal: There were 1 errors compiling module, stopping
Was soll mir das sagen?
Was muß ich tun, um einen Beep oder einen anderen Ton zu erzeugen?
mfg
Werner
Datamodule.pas(187,3) Error: Wrong number of parameters specified for call to "Beep"
Datamodule.pas(207) Fatal: There were 1 errors compiling module, stopping
Was soll mir das sagen?
Was muß ich tun, um einen Beep oder einen anderen Ton zu erzeugen?
mfg
Werner
-
- Lazarusforum e. V.
- Beiträge: 2809
- Registriert: Sa 9. Sep 2006, 18:05
- OS, Lazarus, FPC: Linux (L trunk FPC trunk)
- CPU-Target: 64Bit
- Wohnort: Dresden
- Kontaktdaten:
was hast denn geschrieben?
Beep hat eigentlich keine Parameter und dann sollte es gehen:
http://www.freepascal.org/docs-html/rtl ... /beep.html" onclick="window.open(this.href);return false;
Beep hat eigentlich keine Parameter und dann sollte es gehen:
http://www.freepascal.org/docs-html/rtl ... /beep.html" onclick="window.open(this.href);return false;
Johannes
Der Code sieht folgendermaßen aus:
----------------------------------------------------------------------------------
procedure TDataModule1.EndeWarnerTimer(Sender: TObject);
begin
EndeWarner.Enabled:=False;
beep;
Application.MessageBox('Dieser PC kann heute nur noch 5 Minuten genutzt werden.'
+chr(13)+'Der PC wird dann automatisch ausgeschaltet.',
'Kontrolle der Nutzungszeit',0);
end;
----------------------------------------------------------------------------------
und ich bin auch verblüfft über die Fehlermeldung 'Wrong number of parameters'. Zumal es in einer kurzen Testapplication geht (allerdings hat die eine Form und nicht nur ein Datamodule).
----------------------------------------------------------------------------------
procedure TDataModule1.EndeWarnerTimer(Sender: TObject);
begin
EndeWarner.Enabled:=False;
beep;
Application.MessageBox('Dieser PC kann heute nur noch 5 Minuten genutzt werden.'
+chr(13)+'Der PC wird dann automatisch ausgeschaltet.',
'Kontrolle der Nutzungszeit',0);
end;
----------------------------------------------------------------------------------
und ich bin auch verblüfft über die Fehlermeldung 'Wrong number of parameters'. Zumal es in einer kurzen Testapplication geht (allerdings hat die eine Form und nicht nur ein Datamodule).
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Entweder du versuchst mit Deklaration Finden mal zu schaun was das fürn beep ist das du da versuchst aufzurufen, oder du deklarierst es gleich implizit mit SysUtils.Beep; Ich vermote mal ganz stark du hast die Windows Unit in deiner Unit eingebunden dort muss noch der Parameter was fürn beep es sein soll mit übergeben werden. Ist dann natürlich nicht Plattformunabhängig.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
@Christian: Vielen Dank, jetzt funktioniert es (mit Aufruf sysutils.beep;).
Kann ich irgendwo nachlesen, warum ich sysutils deklarieren muß, wenn ich nur ein Datamodul habe und nicht, wenn ich ein Form habe? Ist ja immer schön, wenn ich was zum fliegen kriege, aber noch schöner, wenn ich auch verstehe wieso;-).
@ Theo: Ich wußte gar nicht, dass ich eine Signatur hatte. Hab' sie auf Stand gebracht. Christian wußte wohl von meiner vorigen Frage noch, dass es um W2k geht. Mit SUSE 10.3 mache ich gerade die ersten Schritte, das als mein System einzutragen, wäre ein bißchen Hochstapelei.
mfg
Werner
Kann ich irgendwo nachlesen, warum ich sysutils deklarieren muß, wenn ich nur ein Datamodul habe und nicht, wenn ich ein Form habe? Ist ja immer schön, wenn ich was zum fliegen kriege, aber noch schöner, wenn ich auch verstehe wieso;-).
@ Theo: Ich wußte gar nicht, dass ich eine Signatur hatte. Hab' sie auf Stand gebracht. Christian wußte wohl von meiner vorigen Frage noch, dass es um W2k geht. Mit SUSE 10.3 mache ich gerade die ersten Schritte, das als mein System einzutragen, wäre ein bißchen Hochstapelei.
mfg
Werner
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Hat er das W2K in den letzten 10 min eingefügt ? > OK hat sich erledigt gelesen.@Christian: Wenn du seine OS-Sig anschaust, steht da nichts von Win.
Beep unter Linux geht meistens nicht. Ich glaube das benötigt Root Rechte.
Lasse mich gern vom Gegenteil überzeugen.
Ich hab gar net auf seine OS Sig geachtet ich kenn nur die deklaration von beep der Windows unit und bin deshalb davon ausgegangen das er Windows nutzt.
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/