AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi wie kann einFunktions-Rückgabewert im Text angezeigt werden?
Thema durchsuchen
Ansicht
Themen-Optionen

wie kann einFunktions-Rückgabewert im Text angezeigt werden?

Ein Thema von juergen · begonnen am 30. Jan 2006 · letzter Beitrag vom 31. Jan 2006
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#1

wie kann einFunktions-Rückgabewert im Text angezeigt werden?

  Alt 30. Jan 2006, 20:53
Hallo zusammmen,
ich weiß nicht so recht wonach ich suchen soll/muss
Ich habe eine Funktion, welche einen String-Rückgabewert hat. (Programmversion)
Diesen Wert möchte ich zusätzlich zu einem Text anzeigen lassen, aber wie???

Zum Verständnis:
Delphi-Quellcode:
procedure TmyProg.ButtonClick(Sender: TObject);
begin
ShellExecute(myProg.Handle,
            'open',
'mailto:xxx.de'+'?subject=Email aus myPro generiert- ' + '*****und hier sollte zusätzlich das Ergebnis meiner Funktion stehen*****' + '&body=Hallo!',
            nil,
            nil,
            SW_SHOWNORMAL);
end;
Danke schonmal vorab!
Jürgen
Indes sie forschten, röntgten, filmten, funkten, entstand von selbst die köstlichste Erfindung: der Umweg als die kürzeste Verbindung zwischen zwei Punkten. (Erich Kästner)
  Mit Zitat antworten Zitat
Benutzerbild von tomsel
tomsel

Registriert seit: 8. Dez 2005
Ort: am Chiemsee
304 Beiträge
 
Delphi 7 Professional
 
#2

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 20:57
Delphi-Quellcode:
procedure TmyProg.ButtonClick(Sender: TObject);
begin
ShellExecute(myProg.Handle,
            'open',
'mailto:xxx.de'+'?subject=Email aus myPro generiert- ' + MeineFunktion + '&body=Hallo!',
            nil,
            nil,
            SW_SHOWNORMAL);
end;
Ein Experte ist ein Mann, der hinterher genau sagen kann, warum seine Prognose nicht gestimmt hat. (Winston Churchill)
  Mit Zitat antworten Zitat
Benutzerbild von ibp
ibp

Registriert seit: 31. Mär 2004
Ort: Frankfurt am Main
1.511 Beiträge
 
Delphi 7 Architect
 
#3

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 20:59
Delphi-Quellcode:
function meinefunktion:string;
begin
  result:='*****und hier sollte zusätzlich das Ergebnis meiner Funktion stehen*****';
end;
procedure TmyProg.ButtonClick(Sender: TObject);
begin
ShellExecute(myProg.Handle,
            'open',
'mailto:xxx.de'+'?subject=Email aus myPro generiert- ' +meinefunktion+ '&body=Hallo!',
            nil,
            nil,
            SW_SHOWNORMAL);
end;
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 21:00
Hallo Tomsel,
dann bekomme ich diese Fehlermeldung:
Zitat:
[Pascal Error] rechner.pas(1835): E2010 Incompatible types: 'string' and 'PAnsiChar'
Jürgen
  Mit Zitat antworten Zitat
Benutzerbild von tomsel
tomsel

Registriert seit: 8. Dez 2005
Ort: am Chiemsee
304 Beiträge
 
Delphi 7 Professional
 
#5

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 21:03
Ah ja. Benutze eine Stringvariable. Weise dieser den Ganzen Text zu und übergebe diese mit pchar() an ShellExecute.
Ein Experte ist ein Mann, der hinterher genau sagen kann, warum seine Prognose nicht gestimmt hat. (Winston Churchill)
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#6

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 21:33
also, ich bekomms net hin...
Ich hab jetzt komplett ein Brett vorm Kopf
Ich bekomme der Variable "Programmversionsanzeige" nicht den Wert der Funktion "ProgrammVersion" zugewiesen...(siehe Fehler von Delphi im Kommentar des 2.Code-Blocks..)

hier mal meine funktion:
Delphi-Quellcode:
function ProgrammVersion : string;

const
   InfoNum = 1;
   InfoStr : array[1..InfoNum] of string = ('FileVersion');
var
   S: string;
   n, Len, i: DWORD;
   Buf: PChar;
   Value: PChar;
begin
   S := Application.ExeName;
   n := GetFileVersionInfoSize(PChar(S), n);
   if n > 0 then
   begin

     Buf := AllocMem(n);
     GetFileVersionInfo(PChar(S), 0, n, Buf);
     for i := 1 to InfoNum do
       if VerQueryValue(Buf, PChar('StringFileInfo\040704E4\' + InfoStr[i]), Pointer(Value), Len) then
          result := result + Value;
     FreeMem(Buf, n);
   end;
end;
wenn ich dann eine Variable vom Typ "String" anlege kann ich dieser den Wert der Funktion nicht zuweisen...

Delphi-Quellcode:
procedure TmyProg.ButtonClick(Sender: TObject);
var Programmversionsanzeige: String;
begin
Programmversionsanzeige:= (ProgrammVersion); // hier erscheint Fehler: [Pascal Error] rechner.pas(1831): E2003 Undeclared identifier: 'ProgrammVersion'
ShellExecute(myProg.Handle,
            'open',
'mailto:xxx.de'+'?subject=Email aus myPro generiert-- ' + 'pchar(Programmversion)' + '&body=Hallo!',
            nil,
            nil,
            SW_SHOWNORMAL);
Jürgen
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#7

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 21:34
Nein. Nicht 'pchar(Bla)'. Dann hast du einen String, der 'pchar(Bla)' enthält.

Es muss heißen pchar(Bla) ohne die ' Dinger.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Benutzerbild von tomsel
tomsel

Registriert seit: 8. Dez 2005
Ort: am Chiemsee
304 Beiträge
 
Delphi 7 Professional
 
#8

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 21:36
So ungefähr:
Delphi-Quellcode:
procedure TmyProg.ButtonClick(Sender: TObject);
var sCommandline:string;
begin

sCommandline := 'mailto:xxx.de'+'?subject=Email aus myPro generiert- ' +
                 Programmversion +
                '&body=Hallo!';

ShellExecute(
    myProg.Handle,
    'open',
    pchar(sCommandline),
    nil,
    nil,
    SW_SHOWNORMAL
);
end;
Ein Experte ist ein Mann, der hinterher genau sagen kann, warum seine Prognose nicht gestimmt hat. (Winston Churchill)
  Mit Zitat antworten Zitat
Benutzerbild von juergen
juergen

Registriert seit: 10. Jan 2005
Ort: Bönen
1.164 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 21:51
Hallo Tomsel,

Delphi erkennt an dieser Stelle einfach meine Funktion "ProgrammVersion" nicht mehr....
Delphi-Quellcode:
sCommandline := 'mailto:xxx.de'+'?subject=Email aus myPro generiert- ' +
                 Programmversion + //hier wird die Funktion gar nicht mehr erkannt...
                '&body=Hallo!';
Es kommt dort wo die Funktion aufgerufen wird wieder:
[Pascal Error] rechner.pas(1831): E2003 Undeclared identifier: 'Programmversion'

Gruß Jürgen
Jürgen
  Mit Zitat antworten Zitat
Benutzerbild von tomsel
tomsel

Registriert seit: 8. Dez 2005
Ort: am Chiemsee
304 Beiträge
 
Delphi 7 Professional
 
#10

Re: wie kann einFunktions-Rückgabewert im Text angezeigt wer

  Alt 30. Jan 2006, 22:04
- ist die Unit, in der sich die Funktion befindet, eingebunden?
- wird die Funktion in ihrer Unit im Interface-Abschnitt aufgeführt?
Ein Experte ist ein Mann, der hinterher genau sagen kann, warum seine Prognose nicht gestimmt hat. (Winston Churchill)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 05:39 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