Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Shellexecute will nicht....
0nk3lz - Mi 08.04.09 21:28
Titel: Shellexecute will nicht....
Ich versuche eine Internetseite über einen Button aufzurufen...
Aber wenn ich den Code:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8:
| uses shellapi;
procedure TForm1.Label1Click(Sender: TObject); begin if shellexecute(handle,'open','http://www.delphi-forum.de',nil,nil,sw_show)<=32 then showmessage('Internetseite konnte nicht geöffnet werden!'); end; |
...eingebe, kommt nur folgendes:
[Fehler] Unit1.pas(73): Anweisung erwartet, aber 'USES' gefunden
[Fehler] Unit1.pas(73): Undefinierter Bezeichner: 'shellapi'
[Fehler] Unit1.pas(76): Anweisung erwartet, aber 'PROCEDURE' gefunden
[Fehler] Unit1.pas(76): Undefinierter Bezeichner: 'Label1Click'
[Fehler] Unit1.pas(76): ';' erwartet, aber '(' gefunden
[Fehler] Unit1.pas(78): Undefinierter Bezeichner: 'shellexecute'
[Fehler] Unit1.pas(78): Undefinierter Bezeichner: 'handle'
[Warnung] Unit1.pas(79): Vorzeichenbehaftete und -lose Typen werden verglichen - beide Operanden werden erweitert
[Fataler Fehler] Project1.dpr(5): Verwendete Unit '..\Unit1.pas' kann nicht compiliert werden
Ich bin schon am verzweifeln... Was soll ich tun??
Moderiert von
Narses: Code- durch Delphi-Tags ersetztModeriert von
Narses: Topic aus Internet / Netzwerk verschoben am Do 09.04.2009 um 00:00
Andreas L. - Mi 08.04.09 21:30
Komma in der Uses-Klausel vergessen oder falsch gesetzt? Poste mal die komplette USES.
Xentar - Mi 08.04.09 21:31
| Zitat: |
| [Fehler] Unit1.pas(73): Anweisung erwartet, aber 'USES' gefunden |
Tja.. dann hast du das Uses wohl an der falschen Stelle stehen.
Post mal, was davor steht.
jaenicke - Mi 08.04.09 21:33
Hallo und :welcome: im Forum!
Schau mal oben in dem Quelltext, da wird irgendwo bereits stehen "uses ...", füge ShellAPI dort einfach hinzu.
0nk3lz - Mi 08.04.09 21:34
Das is jetz der komplette Quellcode:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons;
type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; BitBtn1: TBitBtn; BitBtn2: TBitBtn; StaticText1: TStaticText; StaticText2: TStaticText; BitBtn3: TBitBtn; BitBtn4: TBitBtn; BitBtn5: TBitBtn; BitBtn6: TBitBtn; BitBtn7: TBitBtn; BitBtn8: TBitBtn; BitBtn9: TBitBtn; BitBtn10: TBitBtn; BitBtn11: TBitBtn; BitBtn12: TBitBtn; StaticText3: TStaticText; StaticText4: TStaticText; BitBtn13: TBitBtn; BitBtn14: TBitBtn; StaticText6: TStaticText; StaticText7: TStaticText; BitBtn15: TBitBtn; BitBtn16: TBitBtn; BitBtn17: TBitBtn; BitBtn18: TBitBtn; BitBtn19: TBitBtn; StaticText9: TStaticText; BitBtn20: TBitBtn; BitBtn21: TBitBtn; BitBtn22: TBitBtn; StaticText10: TStaticText; StaticText5: TStaticText; StaticText8: TStaticText; procedure BitBtn2Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure BitBtn3Click(Sender: TObject); private public end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.BitBtn2Click(Sender: TObject); begin Close(); end;
procedure TForm1.BitBtn1Click(Sender: TObject); begin MessageBox(0, 'Test', 'Test', MB_OK or MB_ICONINFORMATION); end;
procedure TForm1.BitBtn3Click(Sender: TObject); begin uses shellapi;
procedure TForm1.Label1Click(Sender: TObject); begin if shellexecute(handle,'open','http://www.delphi-forum.de',nil,nil,sw_show)<=32 then showmessage('Internetseite konnte nicht geöffnet werden!'); end;
end. |
jaenicke hat folgendes geschrieben : |
Hallo und :welcome: im Forum!
Schau mal oben in dem Quelltext, da wird irgendwo bereits stehen "uses ...", füge ShellAPI dort einfach hinzu. |
Hab ich gerade... Macht er aber auch nicht...
Moderiert von
Narses: Code- durch Delphi-Tags ersetzt
Xentar - Mi 08.04.09 21:37
Ähm.. ja. Wir setzen das uses einfach mal irgendwohin, und hoffen, dass Delphi damit klar kommt?
Ne.. pack die Unit ShellAPI ganz oben mit rein, da gibt es schon eine Uses (Zeile 6 und 7).
| Zitat: |
| Hab ich gerade... Macht er aber auch nicht... |
Du musst das "andere" natürlich dann auch rausnehmen. Wenn immer noch nicht geht -> nochmal zeigen.
0nk3lz - Mi 08.04.09 21:46
Will immernoch nicht...^^
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40: 41: 42: 43: 44: 45: 46: 47: 48: 49: 50: 51: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76:
| nit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, Buttons; ShellAPI; type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; BitBtn1: TBitBtn; BitBtn2: TBitBtn; StaticText1: TStaticText; StaticText2: TStaticText; BitBtn3: TBitBtn; BitBtn4: TBitBtn; BitBtn5: TBitBtn; BitBtn6: TBitBtn; BitBtn7: TBitBtn; BitBtn8: TBitBtn; BitBtn9: TBitBtn; BitBtn10: TBitBtn; BitBtn11: TBitBtn; BitBtn12: TBitBtn; StaticText3: TStaticText; StaticText4: TStaticText; StaticText5: TStaticText; BitBtn13: TBitBtn; BitBtn14: TBitBtn; StaticText6: TStaticText; StaticText7: TStaticText; BitBtn15: TBitBtn; BitBtn16: TBitBtn; BitBtn17: TBitBtn; BitBtn18: TBitBtn; BitBtn19: TBitBtn; StaticText8: TStaticText; StaticText9: TStaticText; BitBtn20: TBitBtn; BitBtn21: TBitBtn; BitBtn22: TBitBtn; StaticText10: TStaticText; procedure BitBtn2Click(Sender: TObject); procedure BitBtn1Click(Sender: TObject); procedure BitBtn3Click(Sender: TObject); private public end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.BitBtn2Click(Sender: TObject); begin Close(); end;
procedure TForm1.BitBtn1Click(Sender: TObject); begin MessageBox(0, 'Test', 'Test', MB_OK or MB_ICONINFORMATION); end;
procedure TForm1.BitBtn3Click(Sender: TObject); begin if shellexecute(handle,'open','http://www.delphi-forum.de',nil,nil,sw_show)<=32 then showmessage('Internetseite konnte nicht geöffnet werden!'); end;
end. |
Moderiert von
Narses: Code- durch Delphi-Tags ersetzt
Xentar - Mi 08.04.09 21:48
Maaa..
vergleich mal bitte die vorherigen units, mit der die, wie du sie hinzugefügt hast..
ich machs mal einfach:
Delphi-Quelltext
1: 2:
| uses .... StdCtrls, Buttons; ShellAPI; |
na, fällt was auf?
0nk3lz - Mi 08.04.09 21:52
Jaa, immer diese Fehler(chen)...
Aaaber er meckert weiter :(
[Fehler] Unit1.pas(8): Bezeichner erwartet, aber 'TYPE' gefunden
jaenicke - Mi 08.04.09 21:54
Und wie sehen die Zeilen jetzt aus? :roll:
Xentar - Mi 08.04.09 21:54
Lass mich raten, du hast nun beide ; durch Kommas ersetzt?
Hinter der letzten Unit kann das ; ruhig bleiben.
Hat ma bitte jemand den Link zu dem Einsteiger Tutorial? ;)
0nk3lz - Mi 08.04.09 21:55
Problem gelöst! :)
Ja ich hab mich schon länger nicht mehr mit damit beschäftigt und bin auch nich so drauf heute ;)
Danke für eure Hilfen! Ich hör nu ma auf euch zu nerven ;)
0nk3lz - Mi 08.04.09 21:59
Ich werd nochmal reingucken, danke ;)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!