AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Systemkonstanten

Ein Thema von Carola · begonnen am 29. Aug 2004 · letzter Beitrag vom 31. Aug 2004
Antwort Antwort
Carola

Registriert seit: 29. Aug 2004
Ort: Böblingen
4 Beiträge
 
#1

Systemkonstanten

  Alt 29. Aug 2004, 18:38
Hallo Allerseits,

vielleicht kann mir mal jemand auf die Sprünge helfen:

Mein Programm kennt keine Konsztanten wie MB_OKCANCEL oder fmOpenRead. Wo bekomme ich die her?

Vielen Dank im Voraus.

Grüße
Carola
  Mit Zitat antworten Zitat
29. Aug 2004, 18:44
Dieses Thema wurde von "sakura" von "Internet / IP / LAN" nach "Windows API" verschoben.
Einmal posten in der richtigen Sparte reicht
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#3

Re: Systemkonstanten

  Alt 29. Aug 2004, 18:52
Ich glaube, dass kaum einer weiß, was du meinst, aber ich glaube, was du meinen könntest.

Es könnte sein, dass "Konstanten wie MB_OKCANCEL" nur an bestimmten Stellen verstanden werden, nämlich da, wo sie hingehören.
(Wenn der Compiler sie immer noch nicht kennt, auf die richtige Syntax achten, das Problem genau beschreiben und mit Quellcode posten)
  Mit Zitat antworten Zitat
Carola

Registriert seit: 29. Aug 2004
Ort: Böblingen
4 Beiträge
 
#4

Re: Systemkonstanten

  Alt 29. Aug 2004, 19:04
Hallo Julius,

wenn ich diesen Befehl anwende
application.MessageBox(sfile,'Beispiel1_Steuerelem ente',MB_YESNOCANCEL);
bekomme ich ich folgende Fehlermeldung: Unbekannter Bezichner MB_YESNOCANCEL

Das gleiche erhalte ich bei
sf:=TFileStream.Create('C:\Datei.txt', fmOpenread);
Unbekannter Bezichner fmOpenRead

Viel Grüße
Carola
  Mit Zitat antworten Zitat
Benutzerbild von jfheins
jfheins

Registriert seit: 10. Jun 2004
Ort: Garching (TUM)
4.579 Beiträge
 
#5

Re: Systemkonstanten

  Alt 29. Aug 2004, 19:20
Bei mir geht das (die MessageBox) ohne Probleme
  Mit Zitat antworten Zitat
Carola

Registriert seit: 29. Aug 2004
Ort: Böblingen
4 Beiträge
 
#6

Re: Systemkonstanten

  Alt 29. Aug 2004, 19:29
Hallo Julius,

die Konstanten stehen in der Unit Windows und SysUtils. Die hatte ich unter Uses nicht eingebunden. Ich bin leider kein eingefleischter Delphianer, so daß ich nach solchen Sachen leider noch suchen muß.

Trotzdem Danke für Deine Mühe.

Carola
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#7

Re: Systemkonstanten

  Alt 30. Aug 2004, 23:46
Moin Carola,

nur zur Info:
Es gibt einige Wege um an die entsprechende Unit zu gelangen.
Zum einen kann schlicht F1 helfen. Bei einer Funktion werden meist auch die Konstanten, und deren Unit genannt.
Sollte es sich um API Konstanten handeln, so steht dort meist eine Quickinfo, in der u.a. die Header Datei genannt ist. Diese ist oft auch als Unit in Delphi deklariert.
Wenn Du mindestens eine Pro Version hast, kannst Du auch in den Sourcen der Units suchen, wo diese deklariert ist.
Bei Konstanten (und auch anderen API Spezifika), die in Delphi nicht deklariert sind müsstest Du dann auf die Windows Header Dateien zurückgreifen. Diese bekommt man mit dem PSDK.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#8

Re: Systemkonstanten

  Alt 31. Aug 2004, 08:03
Da Konstannte ja irgendwo deklariert sind, muß natürlich auch die entsprechende Datei (wo diese drin ist) in' Programm eingebunden sein, sonst kann sie ja nicht gefunden werden.


Wenn aber wirklich nicht's geht, dann kannst du ja auch mal auf solche Konstanten verzichten und gibst direkt deren Wert an, oder definierst dir solche Konstanten einfach selber.

Die entsprechenden Werte dafür kannst du ja schließlich auch von anderen, hier im Forum, erfahren.

Code:
[u][b][color=red]aus SysUtils[/color][/b][/u]

  { File open modes - for Windows }
  [color=red]fmOpenRead      = $0000;[/color]
  fmOpenWrite     = $0001;
  fmOpenReadWrite = $0002;

  fmShareCompat   = $0000 platform; // DOS compatibility mode is not portable
  fmShareExclusive = $0010;
  fmShareDenyWrite = $0020;
  fmShareDenyRead = $0030 platform; // write-only not supported on all platforms
  fmShareDenyNone = $0040;
Code:
[u][b][color=red]aus Windows[/color][/b][/u]

  { MessageBox() Flags }
  MB_OK = $00000000;
  [color=red]MB_OKCANCEL = $00000001;[/color]
  MB_ABORTRETRYIGNORE = $00000002;
  MB_YESNOCANCEL = $00000003;
  MB_YESNO = $00000004;
  MB_RETRYCANCEL = $00000005;

  MB_ICONHAND = $00000010;
  MB_ICONQUESTION = $00000020;
  MB_ICONEXCLAMATION = $00000030;
  MB_ICONASTERISK = $00000040;
  MB_USERICON = $00000080;
  MB_ICONWARNING                = MB_ICONEXCLAMATION;
  MB_ICONERROR                  = MB_ICONHAND;
  MB_ICONINFORMATION            = MB_ICONASTERISK;
  MB_ICONSTOP                   = MB_ICONHAND;

Also z.B:
Delphi-Quellcode:
Application.MessageBox(sfile, 'Beispiel1_Steuerelemente', 3{=MB_YESNOCANCEL});
sf := TFileStream.Create('C:\Datei.txt', 0{=fmOpenRead});
$2B or not $2B
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:58 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz