<?xml version="1.0" encoding="ISO-8859-1"?>

<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
	<channel>
		<title>Delphi-Treff</title>
		<link>http://forum.delphi-treff.de/</link>
		<description>Delphi-Treff - Der Treffpunkt für Delphi-Entwickler</description>
		<language>de</language>
		<lastBuildDate>Thu, 17 May 2012 13:53:14 GMT</lastBuildDate>
		<generator>vBulletin</generator>
		<ttl>1</ttl>
		<image>
			<url>http://forum.delphi-treff.de/images/misc/rss.png</url>
			<title>Delphi-Treff</title>
			<link>http://forum.delphi-treff.de/</link>
		</image>
		<item>
			<title>TWicImage und das NEF-Format</title>
			<link>http://forum.delphi-treff.de/showthread.php?31645-TWicImage-und-das-NEF-Format&amp;goto=newpost</link>
			<pubDate>Thu, 17 May 2012 13:42:48 GMT</pubDate>
			<description>Hi zusammen 
 
Wiie ich an anderer Stelle schon angedeutet habe, befasse ich mich derzeit mit einigen Test rund um das in Delphi seit D2010...</description>
			<content:encoded><![CDATA[<div>Hi zusammen<br />
<br />
Wiie ich an anderer Stelle schon angedeutet habe, befasse ich mich derzeit mit einigen Test rund um das in Delphi seit D2010 implementierte TWICImage-Objekt.<br />
Damit - und mit einer Registrierung im TPicture-Objekt - lassen sich RAW-Dateien im TImage anzeigen oder auf der Paintbox zeichnen.  Die Registrierung und Erzeugung:<br />
<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal><span class=hlRes>procedure</span> TTWICImageMain.FormCreate(Sender: TObject);
<span class=hlRes>begin</span>
&nbsp; TPicture.RegisterFileFormat(<span class=hlStr>'NEF'</span>,<span class=hlStr>'NEF Format'</span>,TWICImage);
&nbsp; FWic := TWicImage.Create;
<span class=hlRes>end</span>;

<span class=hlRes>procedure</span> TTWICImageMain.FormDestroy(Sender: TObject);
<span class=hlRes>begin</span>
&nbsp; FWic.Free;
<span class=hlRes>end</span>;</span></pre></div></pre><hr />
</div>
 <br />
Das TWICImage-Objekt kann auch lokal erzeugt und zerstört werden. Für meine Zwecke sollen aber nacheinder mehrere Bilder geladen werden - da macht es nicht viel Sinn, das Objekt jedesmal zu erzeugen und zu zerstören.<br />
<br />
Per Opendialog lade ich dann eine Nef-Graphik ins Image:<br />
<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal><span class=hlRes>procedure</span> TTWICImageMain.SpeedButton4Click(Sender: TObject);
&nbsp; <span class=hlRes>var</span> P : TPicture; freq, startTime, endTime: Int64; startTimer, EndTimer: Cardinal;
<span class=hlRes>begin</span>
&nbsp; <span class=hlRes>if</span> OpenPictureDialog1.Execute <span class=hlRes>then</span> <span class=hlRes>begin</span>
&nbsp; &nbsp; StartTimer := GetTickCount;
&nbsp; &nbsp; QueryPerformanceFrequency(freq);
&nbsp; &nbsp; QueryPerformanceCounter(startTime);
&nbsp; &nbsp; FWic.LoadFromFile(OpenPictureDialog1.FileName);
&nbsp; &nbsp; QueryPerformanceCounter(endTime);
&nbsp; &nbsp; EndTimer := GetTickCount;
&nbsp; &nbsp; Image1.Picture.Assign(FWic);
&nbsp; &nbsp; Memo1.Lines.Add(WICImageFormatDescription(FWIC));
&nbsp; &nbsp; Memo1.Lines.Add(<span class=hlStr>'GetTickCount benötigte etwa '</span> + IntToStr(EndTimer - startTimer) + <span class=hlStr>'ms'</span>);
&nbsp; &nbsp; Memo1.Lines.Add((<span class=hlStr>'FWic benötigte etwa '</span> + IntToStr((endTime - startTime) * <span class=hlInt>1000</span> <span class=hlRes>div</span> freq) + <span class=hlStr>'ms Ladezeit'</span>));
&nbsp; <span class=hlRes>end</span>&nbsp; &nbsp; &nbsp; &nbsp;<span class=hlCom>//</span>
&nbsp; <span class=hlRes>else</span>
&nbsp; &nbsp; <span class=hlRes>raise</span> Exception.Create(<span class=hlStr>'Die Datei existiert nicht'</span>);&nbsp; <span class=hlCom>{ Otherwise raise an exception. }</span>
<span class=hlRes>end</span>;</span></pre></div></pre><hr />
</div>
 <br />
Und das dauert ganz gehörig! Ich bin mir inzwischen ja gewohnt, dass Windows meine 30MB-Bitmaps quälend langsam aufbaut  -  die originalen NEF-Dateien sind da sehr viel schneller erstellt. Letztere sind auch gerade mal einen Drittel so gross, wie die daraus erstellten BMPs.<br />
Mit obigem Code und beiden Messmethoden dauert es gute 5-6 Sekunden, bis das Bild aufgebaut ist. Windows und auch Irwanview brauchen dazu längst nicht solang.<br />
<br />
Die 5 Sekunden wären ja egal, wenn es nur darum ginge, jeweils ein Bild zu laden. Wenn aber mehrere geladen werden sollen, sieht die Sache anders aus, da mehrere gleich auch mehrere 100 sein können. Ausserdem müssen die Dinger gleichzeitig auch geändert werden (Höhe und Breite sowie Format ändern, speichern). Von daher wäre es mehr als sinnvoll, das reine Laden (ohne Anzeige!!) auf vielleicht eine oder 2 Sekunden zu drücken.<br />
Ich hatte gehofft, der Vorgang liesse sich durch direkten Zugriff auf die Grafik und unter Einsatz von DirectX beschleunigen, bin aber inzwischen beim Beschaffen von Infos ins Stocken geraten. Die oben von Memo1 aufgerufene Funktion WICImageFormatDescription:<br />
<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal><span class=hlRes>function</span> TTWICImageMain.WICImageFormatDescription(<span class=hlRes>const</span> WIC: TWICImage): <span class=hlRes>string</span>;
&nbsp; <span class=hlRes>var</span> GUID_ContainerFormatNEF : TGUID;
<span class=hlRes>begin</span>
&nbsp; Result := <span class=hlStr>''</span>;
&nbsp; <span class=hlRes>case</span> WIC.ImageFormat <span class=hlRes>of</span>
&nbsp; &nbsp; wifBmp: Result := <span class=hlStr>'Bitmap'</span>;
&nbsp; &nbsp; wifPng: Result := <span class=hlStr>'PNG'</span>;
&nbsp; &nbsp; wifJpeg: Result := <span class=hlStr>'JPEG'</span>;
&nbsp; &nbsp; wifGif: Result := <span class=hlStr>'GIF'</span>;
&nbsp; &nbsp; wifTiff: Result := <span class=hlStr>'TIFF'</span>;
&nbsp; &nbsp; wifWMPhoto: Result := <span class=hlStr>'JPEG XR'</span>;
&nbsp; &nbsp; wifOther:
&nbsp; &nbsp; <span class=hlRes>begin</span>
&nbsp; &nbsp; &nbsp; CreateGUID(GUID_ContainerFormatNEF);
&nbsp; &nbsp; &nbsp; <span class=hlRes>if</span> GUIDToString(WIC.EncoderContainerFormat) = GUIDToString(GUID_ContainerFormatNEF) <span class=hlRes>then</span>
&nbsp; &nbsp; &nbsp; &nbsp; Result := <span class=hlStr>'NEF'</span>
&nbsp; &nbsp; &nbsp; <span class=hlRes>else</span>
&nbsp; &nbsp; &nbsp; &nbsp; Result := <span class=hlStr>'WIC.EncoderContainerFormat := '</span> + GUIDToString(WIC.EncoderContainerFormat)+ <span class=hlStr>#13</span><span class=hlStr>#10</span> +
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span class=hlStr>'GUID_ContainerFormatNEF := '</span> + GUIDToString(GUID_ContainerFormatNEF);
&nbsp; &nbsp; <span class=hlRes>end</span>;
&nbsp; <span class=hlRes>end</span>;
<span class=hlRes>end</span>;</span></pre></div></pre><hr />
</div>
 <br />
Ich denke, hier sind die Zeilen nach dem letzten Selektor falsch, bzw. sie hatten erstmal Testcharakter. Ausserdem gehe ich mit dem Funktionsergebnis nicht nur ungenügend um, sondern rufe die Funktion wohl auch noch am falschen Ort auf.<br />
Allerdings - wie's jetzt weitergehen soll, ist mir nicht so ganz klar. Hat jemand einen Tip?<br />
<br />
Gruss<br />
Delbor</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?10-Multimedia-Spiele-Grafik">Multimedia/Spiele/Grafik</category>
			<dc:creator>Delbor</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31645-TWicImage-und-das-NEF-Format</guid>
		</item>
		<item>
			<title>TCP Server/Client Problem</title>
			<link>http://forum.delphi-treff.de/showthread.php?31643-TCP-Server-Client-Problem&amp;goto=newpost</link>
			<pubDate>Wed, 16 May 2012 14:16:07 GMT</pubDate>
			<description>Guten Tag, wie mein Nickname schon sagt hab ich nicht wirklich Ahnung von delphi,  
dennoch habe ich einen kleinen TCP Server und Client erstellt,...</description>
			<content:encoded><![CDATA[<div>Guten Tag, wie mein Nickname schon sagt hab ich nicht wirklich Ahnung von delphi, <br />
dennoch habe ich einen kleinen TCP Server und Client erstellt, der Client soll lediglich <br />
eine Nachricht (Befehl ) an den Server schicken, der Server zeigt dann eine Massage <br />
z.B. &#8218;hallo&#8216; oder so. Im localhost geht das ohne Probleme, leider kann ich keine Verbindung<br />
über das Internet herstellen. Meine Fragen sind : Fehler im Code? Oder fehlt mir es einfach <br />
an Vorwissen? Wie kriege ich das hin? <br />
<br />
Danke im voraus.<br />
<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal><span class=hlRes>unit</span> server;

<span class=hlRes>interface</span>

<span class=hlRes>uses</span>
&nbsp; Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
&nbsp; Dialogs, IdContext, IdBaseComponent, IdComponent, IdCustomTCPServer,
&nbsp; IdTCPServer;

<span class=hlRes>type</span>
&nbsp; TForm1 = <span class=hlRes>class</span>(TForm)
&nbsp; &nbsp; TCPServer: TIdTCPServer;
&nbsp; &nbsp; <span class=hlRes>procedure</span> TCPServerExecute(AContext: TIdContext);
&nbsp; &nbsp; <span class=hlRes>procedure</span> FormCreate(Sender: TObject);
&nbsp; &nbsp; <span class=hlRes>procedure</span> FormDestroy(Sender: TObject);
&nbsp; <span class=hlRes>private</span>
&nbsp; &nbsp; <span class=hlCom>{ Private-Deklarationen }</span>
&nbsp; <span class=hlRes>public</span>
&nbsp; &nbsp; <span class=hlCom>{ Public-Deklarationen }</span>
&nbsp; <span class=hlRes>end</span>;

<span class=hlRes>var</span>
&nbsp; Form1: TForm1;

<span class=hlRes>implementation</span>

<span class=hlOpt>{$R *.dfm}</span>

<span class=hlRes>procedure</span> TForm1.FormCreate(Sender: TObject);
<span class=hlRes>begin</span>
tcpserver.Active:=true;
<span class=hlRes>end</span>;

<span class=hlRes>procedure</span> TForm1.FormDestroy(Sender: TObject);
<span class=hlRes>begin</span>
tcpserver.Active:=false;
<span class=hlRes>end</span>;

<span class=hlRes>procedure</span> TForm1.TCPServerExecute(AContext: TIdContext);
<span class=hlRes>begin</span>
<span class=hlRes>if</span> acontext.Connection.IOHandler.ReadLn=(<span class=hlStr>'hallo'</span>) <span class=hlRes>then</span>
showmessage(<span class=hlStr>'moin'</span>);;
<span class=hlRes>end</span>;

<span class=hlRes>end</span>.</span></pre></div></pre><hr />
</div>
 <br />
==================================================  ==========<br />
<br />
<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal><span class=hlRes>unit</span> client;

<span class=hlRes>interface</span>

<span class=hlRes>uses</span>
&nbsp; Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
&nbsp; Dialogs, IdBaseComponent, IdComponent, IdTCPConnection, IdTCPClient,
&nbsp; IdExplicitTLSClientServerBase, IdFTP, StdCtrls;

<span class=hlRes>type</span>
&nbsp; TTCPClient = <span class=hlRes>class</span>(TForm)
&nbsp; &nbsp; TCP: TIdTCPClient;
&nbsp; &nbsp; Connect: TButton;
&nbsp; &nbsp; Disconnect: TButton;
&nbsp; &nbsp; Send: TButton;
&nbsp; &nbsp; PortE: TEdit;
&nbsp; &nbsp; <span class=hlRes>procedure</span> ConnectClick(Sender: TObject);
&nbsp; &nbsp; <span class=hlRes>procedure</span> DisconnectClick(Sender: TObject);
&nbsp; &nbsp; <span class=hlRes>procedure</span> SendClick(Sender: TObject);
&nbsp; <span class=hlRes>private</span>
&nbsp; &nbsp; <span class=hlCom>{ Private-Deklarationen }</span>
&nbsp; <span class=hlRes>public</span>
&nbsp; &nbsp; <span class=hlCom>{ Public-Deklarationen }</span>
&nbsp; <span class=hlRes>end</span>;

<span class=hlRes>var</span>
&nbsp; TCPClient: TTCPClient;

<span class=hlRes>implementation</span>

<span class=hlOpt>{$R *.dfm}</span>

<span class=hlRes>procedure</span> TTCPClient.ConnectClick(Sender: TObject);
<span class=hlRes>begin</span>
Tcp.Host:=portE.Text;
tcp.Port:=<span class=hlInt>8090</span>;
tcp.Connect();
<span class=hlRes>end</span>;

<span class=hlRes>procedure</span> TTCPClient.DisconnectClick(Sender: TObject);
<span class=hlRes>begin</span>
tcp.Disconnect;
<span class=hlRes>end</span>;

<span class=hlRes>procedure</span> TTCPClient.SendClick(Sender: TObject);
<span class=hlRes>begin</span>
tcp.IOHandler.WriteLn(<span class=hlStr>'hallo'</span>);
<span class=hlRes>end</span>;

<span class=hlRes>end</span>.</span></pre></div></pre><hr />
</div>
 <br />
<i>//Edit: delphi-Tags(&#91;delphi&#93;...&#91;/delphi&#93;) ergänzt. Sie dienen der besseren Lesbarkeit. Bitte nächstes Mal selbst dran denken...  mfg  R2C2</i></div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?20-Bastelecke">Bastelecke</category>
			<dc:creator>supernoob</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31643-TCP-Server-Client-Problem</guid>
		</item>
		<item>
			<title>Delphi-Programmierer in Berlin gesucht</title>
			<link>http://forum.delphi-treff.de/showthread.php?31642-Delphi-Programmierer-in-Berlin-gesucht&amp;goto=newpost</link>
			<pubDate>Wed, 16 May 2012 11:12:41 GMT</pubDate>
			<description><![CDATA[Freiberuflicher Delphi-Programmierer (m/w) für Fortführung einer Betriebssoftware (Kurs- & Terminverw., Rewe) mit SQL-Datenbank gesucht; ausführliche...]]></description>
			<content:encoded><![CDATA[<div>Freiberuflicher Delphi-Programmierer (m/w) für Fortführung einer Betriebssoftware (Kurs- &amp; Terminverw., Rewe) mit SQL-Datenbank gesucht; ausführliche Einarbeitung; geplante neue Module Fitnesstest-, Trainingsplan- &amp; webbasiertes Vertretungsmodul<br />
Bei Interesse Angebot bitte via <a href="mailto:bewerbung@sport-gesundheitspark.de">bewerbung@sport-gesundheitspark.de</a> an Dipl. math. Peter Schwitters, Geschäftsführer, Sport-Gesundheitspark Berlin e.V., Forckenbeckstr. 21, 14199 Berlin</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?34-Stellenanzeigen">Stellenanzeigen</category>
			<dc:creator>Gesundheitspark Berlin</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31642-Delphi-Programmierer-in-Berlin-gesucht</guid>
		</item>
		<item>
			<title>Fehlermeldung: Kein Datenträger...</title>
			<link>http://forum.delphi-treff.de/showthread.php?31641-Fehlermeldung-Kein-Datenträger&amp;goto=newpost</link>
			<pubDate>Wed, 16 May 2012 11:07:17 GMT</pubDate>
			<description>Hi zusammen 
 
Im Moment habe ich eine etwas merkwürdige Fehlermeldung, die zeitweise von diesem Code ausgelöst wird: 
 
procedure...</description>
			<content:encoded><![CDATA[<div>Hi zusammen<br />
<br />
Im Moment habe ich eine etwas merkwürdige Fehlermeldung, die zeitweise von diesem Code ausgelöst wird:<br />
<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal><span class=hlRes>procedure</span> TTWICImageMain.SpeedButton4Click(Sender: TObject);
&nbsp; <span class=hlRes>var</span> P : TPicture;
<span class=hlRes>begin</span>
&nbsp; <span class=hlRes>if</span> OpenPictureDialog1.Execute <span class=hlRes>then</span> <span class=hlRes>begin</span>
&nbsp; &nbsp; <span class=hlRes>if</span> FileExists(OpenPictureDialog1.FileName) <span class=hlRes>then</span> <span class=hlRes>begin</span>
&nbsp; &nbsp; &nbsp; FWic.LoadFromFile(OpenPictureDialog1.FileName);
&nbsp; &nbsp; &nbsp; Image1.Picture.Assign(FWic);
&nbsp; &nbsp; &nbsp; ShowMessage(WICImageFormatDescription(FWIC));
&nbsp; &nbsp; <span class=hlRes>end</span>
&nbsp; &nbsp; <span class=hlRes>else</span>
&nbsp; &nbsp; &nbsp; <span class=hlRes>raise</span> Exception.Create(<span class=hlStr>'Die Datei existiert nicht'</span>);&nbsp; <span class=hlCom>{ Otherwise raise an exception. }</span>
&nbsp; <span class=hlRes>end</span>;
<span class=hlRes>end</span>;</span></pre></div></pre><hr />
</div>
 <br />
Die bewusste Datei befindet sich auf einem externen Laufwerk. Deshalb war meine erste Idee: der 'Bösewicht' ist das Laufwerk selbst oder die Verbindung zum PC (Wackelkontakt?). Nur würde FileExist dann wohl false liefern. Ein Haltepunkt stoppt das Programm allerdings schon in der Execute-Zeile, und die AV tritt auf, wenn ich mit F7 oder F8 weitersteppen will  -  FileExists wird also gar nicht aufgerufen.<br />
<br />
Gruss<br />
Delbor</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?13-Object-Pascal">Object Pascal</category>
			<dc:creator>Delbor</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31641-Fehlermeldung-Kein-Datenträger</guid>
		</item>
		<item>
			<title>Softwareentwickler DELPHI für Bad Mergentheim gesucht (m/w)</title>
			<link>http://forum.delphi-treff.de/showthread.php?31640-Softwareentwickler-DELPHI-für-Bad-Mergentheim-gesucht-(m-w)&amp;goto=newpost</link>
			<pubDate>Wed, 16 May 2012 10:23:41 GMT</pubDate>
			<description>Softwareentwickler DELPHI gesucht (m/w) 
 
Festanstellung, unbefristet 
 
 
BARTEC ist ein führendes Unternehmen in den Bereichen...</description>
			<content:encoded><![CDATA[<div>Softwareentwickler DELPHI gesucht (m/w)<br />
<br />
Festanstellung, unbefristet<br />
<br />
<br />
BARTEC ist ein führendes Unternehmen in den Bereichen Automatisierungstechnik, Steuer- und Verbindungstechnik, Wärmetechnik, sowie Analyse- und Messtechnik.<br />
<br />
Unter diesem Leitmotiv entwickelt, produziert und vertreibt BARTEC Komponenten- und Systemlösungen für Ex-Schutz Anwendungen. Die Kunden kommen aus den Bereichen Chemie, Öl und Gas, Petrochemie, Bergbau, Pharmazie, Energie und Umwelt.<br />
<br />
BARTEC ist weltweit mit ca. 300 Mio. Euro Umsatz und 1700 Mitarbeitern aktiv.<br />
<br />
<br />
<br />
Tätigkeit:<br />
<br />
&#61607;	Neu- und Weiterentwicklungen der Softwareprodukte für die Automatisierung auf Grundlage von   <br />
              DELPHI<br />
&#61607;	Erstellung von Windows XP/7 Embedded Systemen in unterschiedlichen Konfigurationen<br />
&#61607;	Entwicklung von Systemen zur Visualisierung von Anlagen und Prozessen<br />
&#61607;	Software-Support <br />
<br />
<br />
<br />
Wen suchen wir:<br />
<br />
Wenn Sie bereits erste Erfahrungen in der Softwareentwicklung mit DELPHI gesammelt haben, suchen wir genau Sie.<br />
<br />
<br />
<br />
Sehr gerne geben wir Ihnen telefonisch oder per Mail weitere Infos zu der Stelle.<br />
<br />
<br />
<br />
Bitte nehmen Sie dazu Kontakt zu uns auf!<br />
<br />
<br />
<br />
Kontakt:			<br />
<br />
<br />
Katharina Eidel<br />
 <br />
Inter-Consulta GmbH<br />
Theodorstraße 1<br />
<br />
90489 Nürnberg<br />
<br />
Tel: +49/911/580 722-150<br />
Fax:+49/911/580 722-111<br />
<a href="mailto:katharina.eidel@inter-consulta.de">katharina.eidel@inter-consulta.de</a><br />
<a href="http://www.inter-consulta.de" target="_blank">www.inter-consulta.de</a></div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?34-Stellenanzeigen">Stellenanzeigen</category>
			<dc:creator>kaci</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31640-Softwareentwickler-DELPHI-für-Bad-Mergentheim-gesucht-(m-w)</guid>
		</item>
		<item>
			<title>Stellenangebot Delphi- und PHP-Softwareentwickler(in)</title>
			<link>http://forum.delphi-treff.de/showthread.php?31639-Stellenangebot-Delphi-und-PHP-Softwareentwickler(in)&amp;goto=newpost</link>
			<pubDate>Wed, 16 May 2012 08:43:45 GMT</pubDate>
			<description>Die Lavid Software GmbH ist ein 1996 gegründeter Softwarehersteller aus Mönchengladbach-Rheydt. Bereits seit 1999 entwickeln und betreuen wir die...</description>
			<content:encoded><![CDATA[<div>Die Lavid Software GmbH ist ein 1996 gegründeter Softwarehersteller aus Mönchengladbach-Rheydt. Bereits seit 1999 entwickeln und betreuen wir die Branchenlösung Lavid-F.I.S.. In Kürze werden wir eine neue Version veröffentlichen. Seit 2006 forcieren wir zusätzlich die Umsetzung der Client-Funktionalitäten in ein Web-Portal und bauen daher unser Team weiter aus.<br />
<br />
Zur Unterstützung unseres Entwicklungsteams suchen wir zum nächstmöglichen Zeitpunkt eine(n) Delphi- und PHP-Softwareentwickler(in).<br />
<br />
Nähere Informationen finden Sie unter <a href="http://www.lavid-software.net/index.php?id=jobs" target="_blank">http://www.lavid-software.net/index.php?id=jobs</a> .<br />
<br />
Die Stellenausschreibung im PDF-Format ist unter <a href="http://www.lavid-software.net/fileadmin/downloads/Stellenangebot_Entwickler.pdf" target="_blank">http://www.lavid-software.net/filead...Entwickler.pdf</a> verfügbar.</div>


	<div style="padding:10px">

	

	

	

	
		<fieldset class="fieldset">
			<legend>Angehängte Dateien</legend>
			<ul>
			<li>
	<img class="inlineimg" src="http://forum.delphi-treff.de/images/attach/pdf.gif" alt="Dateityp: pdf" />
	<a href="http://forum.delphi-treff.de/attachment.php?attachmentid=696&amp;d=1337157812" target="_blank">Stellenangebot Entwickler.pdf</a> 
(190,8 KB)
</li>
			</ul>
		</fieldset>
	

	</div>
]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?34-Stellenanzeigen">Stellenanzeigen</category>
			<dc:creator>Loeppi</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31639-Stellenangebot-Delphi-und-PHP-Softwareentwickler(in)</guid>
		</item>
		<item>
			<title>Suche: Das eierlegende Wollmilch-Grid</title>
			<link>http://forum.delphi-treff.de/showthread.php?31638-Suche-Das-eierlegende-Wollmilch-Grid&amp;goto=newpost</link>
			<pubDate>Tue, 15 May 2012 10:01:29 GMT</pubDate>
			<description>Hallo liebe Delphi-Gemeinde. 
 
Ich suche derzeit nach einer neuen Möglichkeit Daten in Grids anzuzeigen. Bisher habe ich immer TStringGrids...</description>
			<content:encoded><![CDATA[<div>Hallo liebe Delphi-Gemeinde.<br />
<br />
Ich suche derzeit nach einer neuen Möglichkeit Daten in Grids anzuzeigen. Bisher habe ich immer TStringGrids verwendet (bzw eine eigene Komponente mit ein paar zusätzlichen Grafik-Funktionen), allerdings ist die Datenbankanbindung bei TStringGrids quasi nicht vorhanden.<br />
<br />
Ich suche gerade ein Grid, mit dem ich Daten direkt aus einem Query anzeigen kann, in dem Datensätze gesperrt werden können, die gerade angefasst werden. Außerdem soll ein Rollback möglich sein, wenn ein Datensatz nicht gespeichert werden soll und die Datenzugriffe sollen möglichst gering sein. Darüber hinaus hätte ich gerne noch grafische Funktionen, möchte Buttons und Dropdowns (am liebsten ohne umständliches positionieren unsichtbarer Komponenten) darin anzeigen können usw. <br />
<br />
TL;dr : Kratos sucht das Supergrid.<br />
<br />
Jemand nen paar Komponenten die ich mir da genauer anschauen kann? Es muss nicht zwingend Freeware sein, sollte aber bezahlbar sein (Ich will ja nur ein Grid und kein ganzes Bundle)</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?11-Komponenten-(VCL)">Komponenten (VCL)</category>
			<dc:creator>Kratos</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31638-Suche-Das-eierlegende-Wollmilch-Grid</guid>
		</item>
		<item>
			<title>Abstürze mit .NET über COM und Webservice</title>
			<link>http://forum.delphi-treff.de/showthread.php?31636-Abstürze-mit-NET-über-COM-und-Webservice&amp;goto=newpost</link>
			<pubDate>Tue, 15 May 2012 07:09:31 GMT</pubDate>
			<description>Hallo Zusammen, 
 
wir haben ein nicht nachvollziehbares Problem mit Delphi XE und .NET Interoperabilität bzw. .NET Webservices. 
 
Hier einen kurze...</description>
			<content:encoded><![CDATA[<div>Hallo Zusammen,<br />
<br />
wir haben ein nicht nachvollziehbares Problem mit Delphi XE und .NET Interoperabilität bzw. .NET Webservices.<br />
<br />
Hier einen kurze Beschreibung unseres Szenarios:<br />
<br />
Wir haben .NET Webservices. Da diese komplexe .NET Datenstrukturen als Übergabeparameter verwenden, ist die direkte Kommunikation mit Delphi XE nicht möglich. (Delphi XE hat Schwierigkeiten mit der Auflösung der WSDL...)<br />
Daher haben wir uns entschieden eine interoperable .NET Dll zu entwickeln, die die Webservice kapselt und einfache Schnittstellen für Delphi über COM bereitstellt.<br />
<br />
Das Ganze klappt auf unseren Entwicklungsrechnern sowohl unter Windows 7 als auch Windows XP einwandfrei.<br />
<br />
Nur wenn wir das Delphi-Testprogramm mit der .NET Dll auf Rechnern starten (egal ob Windows XP oder 7) auf denen kein Delphi XE installiert ist, stürzt das Programm beim Befehl den Webservice aufzurufen komplett ab. Alle Exceptionhandler, sowohl in der .NET Dll als auch im Delphi Testprogramm, greifen nicht. Nimmt man als Testprojekt eine .NET Exe und ruft über diese DLL die Webservices auf klappt das auf allen Rechnern ohne Probleme.<br />
<br />
Die Webservice selbst sind in Ordnung, sie werden auch bereits von anderen Programmen produktiv genutzt. Diese kann ich als Fehlerursache ausschließen.<br />
<br />
Auf einem Entwicklungsrechner, auf dem Delphi 2009 installiert ist, stürtzt das Delphi Testprogramm ebenfalls ab.<br />
<br />
Es muss also meiner Meinung nach mit etwas Zusammenhängen, was Delphi XE auf den Rechnern mitinstalliert...<br />
<br />
Hat jemand eine Idee woran es liegen könnte?<br />
<br />
Alle Remotedebugging-Versuche waren bisher auch wenig aufschlussreich...<br />
<br />
Noch was: Wir haben die Kommunikation der Rechner mit einem Sniffer überwacht. Ergebnis: Der Request an den Webservice wird garnicht gesendet, das Programm stürzt schon vorher ab.</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?14-Sonstiges">Sonstiges</category>
			<dc:creator>kap</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31636-Abstürze-mit-NET-über-COM-und-Webservice</guid>
		</item>
		<item>
			<title>Geschenk für gute Freundin</title>
			<link>http://forum.delphi-treff.de/showthread.php?31634-Geschenk-für-gute-Freundin&amp;goto=newpost</link>
			<pubDate>Mon, 14 May 2012 15:51:03 GMT</pubDate>
			<description>Hey Leute, 
ne gute Freundin von mir hat bald GB. 
Naja wollt ihr natürlich was cooles schenken. 
Und dachte dabei an sowas hier...</description>
			<content:encoded><![CDATA[<div>Hey Leute,<br />
ne gute Freundin von mir hat bald GB.<br />
Naja wollt ihr natürlich was cooles schenken.<br />
Und dachte dabei an sowas<a href="http://www.otto.de/Buegel-Tankini-Top-Dressy-LASCANA/shop-de_dpip_AKL12940559/" target="_blank"> hier</a>.<br />
Haltet ihr das für zu aufdringlich .<br />
Oder geht das noch ?<br />
Danke euch schonmal . :)</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?17-Off-Topic">Off-Topic</category>
			<dc:creator>valdi</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31634-Geschenk-für-gute-Freundin</guid>
		</item>
		<item>
			<title>edit1 mit enter bestätigen und weiter gehen</title>
			<link>http://forum.delphi-treff.de/showthread.php?31633-edit1-mit-enter-bestätigen-und-weiter-gehen&amp;goto=newpost</link>
			<pubDate>Mon, 14 May 2012 10:54:48 GMT</pubDate>
			<description>hallo hallo,... 
 
ich habe folgendes Problem... 
 
ich möchte in ein edit-feld (edit1.text) ein höchstens 3-stelliges wort eigeben, enter drücken...</description>
			<content:encoded><![CDATA[<div>hallo hallo,...<br />
<br />
ich habe folgendes Problem...<br />
<br />
ich möchte in ein edit-feld (edit1.text) ein höchstens 3-stelliges wort eigeben, enter drücken und damit den button2 automatisch mitgedrückt haben, wenn eines von 25 kriterien erfüllt wurde, nämlich, ob in edit1<br />
ein z.b m, kg, V, A oder sowas steht....<br />
<br />
<br />
vielleicht kann mir ja jemand helfen, danke....</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?20-Bastelecke">Bastelecke</category>
			<dc:creator>eso91</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31633-edit1-mit-enter-bestätigen-und-weiter-gehen</guid>
		</item>
		<item>
			<title>Neu Refer- und Derefernzieren von beliebigen Records (über Netzwerk)</title>
			<link>http://forum.delphi-treff.de/showthread.php?31632-Refer-und-Derefernzieren-von-beliebigen-Records-(über-Netzwerk)&amp;goto=newpost</link>
			<pubDate>Sat, 12 May 2012 18:29:12 GMT</pubDate>
			<description>Ich konnts leider schlecht in kürze beschreiben, ich hoffe, es ist verständlich, was daran ein guter Tipp ist :) 
 
Ich habe mich länger einmal mit...</description>
			<content:encoded><![CDATA[<div>Ich konnts leider schlecht in kürze beschreiben, ich hoffe, es ist verständlich, was daran ein guter Tipp ist :)<br />
<br />
Ich habe mich länger einmal mit dem Problem umgesehen: wie kann ich einfach und schnell Datenkonstrukte über das Netzwerk versenden und am empfänger erkennen, was ich vorfinde. Im Kern wird jeder Datentyp in Bytes zerlegt und als TBytes datentyp verschickt. Die ersten 4 Bytes bilden einen Integer, der eine art Kennung beschreibt, welcher Datentyp verwendet werden soll. Sind also die Datenstrukturen bekannt, kann man mit etwa<br />
20 Zeilen JEDEN record zerlegen und dereferenzieren, egal wieviele es sind. Ich poste mal den Core, der sollte gut beschrieben sein. vielleicht kann das jemand besser beschreiben als ich^^.<br />
<br />
<hr /><br />
//das zerlegt erstmal den datenblock in TBytes und fügt einen Index(ID) vorne dran<br />
<b>Function IDSplitRecordToTByte(ID:Integer; pRec: Pointer; SizeOfRec:LongInt):TBytes;<br />
var p: PAnsiChar;<br />
begin<br />
  SetLength(Result,SizeOfRec+SizeOf(Integer)); </b>//die Länge von TBytes ergibt sich aus der Länge des Records<br />
                                                                               //und der eines Integer, idr. 4 Byte<b><br />
  p:=pAnsiChar(@ID); </b>//zuerst Zeigen wir auf ID, greifen durch 'p' auf jeden einzelnen Byte zu und weisen diesenauf 'result'  //zu. Der Variable 'byte' im Beispiel werden dadurch die einzelnen Bytes zugewiesen<b><br />
  Move(p[0],Result[0], SizeOf(Integer));</b> //Move bewegt alle Einträge von p an der Stelle 0 und die darauffolgenden4      <br />
                                                                  //Einträgeauf 'Result', beginnend bei Stelle 0 von 'Result'<b><br />
  p:=PAnsiChar(pRec);                              </b>//das selbe nochmal, nur mit dem eigentlichen record <b><br />
  Move(p[0],Result[4],SizeOfRec);<br />
end;</b><br />
<br />
<hr /><br />
//Damit können wir unsere (gesendeten) Daten wieder in einen record umwandeln. Dazu muss nur eine referenz in Form eines PAnsiChars übergeben werden, der auf unser record zeigt. Wichtig ist auch, dass auf die richtige Variable gezeigt wird, damit es keine Datenfehler gibt<br />
<b>Function DereferenzTByteToID(Bytes:TBytes):Integer;<br />
var p: PAnsiChar;<br />
   ID:Integer;<br />
begin<br />
  p:=pAnsiChar(@Bytes);</b> //zeige auf 'Bytes'<b><br />
  Move(p[0],pAnsiChar(@ID)[0],4); </b>//verschiebe die ersten 4 Einträge von 'Bytes', die unsere ID ergeben<b><br />
  result := ID;<br />
end;</b><br />
<br />
<br />
<hr /><br />
//hier wird der rest in den angegeben record übertragen<b><br />
Function TBytesToRecord(Bytes:TBytes; pRec: PAnsiChar; SizeOfRec:LongInt):boolean;<br />
begin<br />
</b>  //Byte[0..3] sind für ID reserviert gewesen!<b><br />
  Move(Bytes[4], pRec[0], SizeOfRec);<br />
  Result:=true;<br />
end;<br />
<br />
</b> <hr />//hier einmal ein Beispiel record. Es spielt keine Rolle, was genau drinne ist, solange dieser zwischen Sender und Empfänger <i><u>gleich </u></i>defeniert ist<br />
<br />
<b>type TRecord = Record<br />
                        s:String;</b><br />
           <b> x:Integer;<br />
            y:Integer;<br />
            z:Integer;<br />
        end;</b><br />
<br />
<br />
<hr /><br />
//und jetzt nurnoch der Aufruf. Im Testlauf wird ein 3 teiliger record zerlegt und wieder zusammengefügt<br />
<b>procedure TForm1.Button4Click(Sender: TObject);</b><br />
<b>var GiveRec:TRecord;<br />
    ReceiveRecord:TRecord;<br />
    Bytes : TBytes;<br />
    ID:Integer;<br />
begin</b><br />
  //define record.<br />
 <b> GiveRec.s:='20';<br />
  GiveRec.x:=256; //in bytes: 0,1,0,0<br />
  GiveRec.Y:=0;    //          0,0,0,0<br />
  GiveRec.Z:=255; //          255,0,0,0</b><br />
<br />
 <b> ID:= 1; </b>//hier lege ich einach mal fest, dass dies für unser TRecord steht.<br />
              //Das muss beim Empfänger genauso sein!!!<br />
  //Hier wird an den ersten 4 Stellen von 'Bytes' unsere ID in Bytes umgeschrieben und der rest des record als Byte dazu<br />
  <b>Bytes := IDSplitRecordToTByte(ID,@GiveRec,LongInt(SizeOf(Gi  veRec)));</b><br />
<br />
  //' Der Empfänger'<br />
  //Zuerst muss die ID bekommen werden. Dazu werden die ersten 4 Bytes zu einem Integer zusammengefügt<br />
  <b>ID := DereferenzTByteToID(Bytes);</b><br />
  //nachdem die ID extrahier ist, müsste man hier eventuell zwischen verschiedenen Record-Arten unterscheiden<br />
  //in diesem Beispiel gibt es nur einen, also brauchen wir nurnoch alle Bytes in unseren 'ReceiveRecord' schreiben<br />
  <b>TBytesToRecord(Bytes, @ReceiveRecord, LongInt(Length(Bytes)-4));</b> //ich hab hier 'Length' genommen, weil SizeOf <br />
                                                                                                                    //0 ausgibt<br />
  //Ausgabe, hier nur alternativ<br />
  <b>ListBox1.Items.Add('S: '+ReceiveRecord.s + ' X: '+IntToStr(ReceiveRecord.x)+ 'Y' + IntToStr(ReceiveRecord.Y) + ' Z: ' +IntToStr(ReceiveRecord.Z));<br />
end;</b></div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?28-Verbesserung-Tipps-amp-Tricks"><![CDATA[Verbesserung Tipps & Tricks]]></category>
			<dc:creator>Spectar</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31632-Refer-und-Derefernzieren-von-beliebigen-Records-(über-Netzwerk)</guid>
		</item>
		<item>
			<title>TImage unter MacOS X</title>
			<link>http://forum.delphi-treff.de/showthread.php?31631-TImage-unter-MacOS-X&amp;goto=newpost</link>
			<pubDate>Sat, 12 May 2012 08:50:26 GMT</pubDate>
			<description>Moin, 
ich hab folgendes Problem, und zwar wollte ich testweise ein altes Programm von mir mit Hilfe des PAServers auf einem MAC ausführen. Aber dort...</description>
			<content:encoded><![CDATA[<div>Moin,<br />
ich hab folgendes Problem, und zwar wollte ich testweise ein altes Programm von mir mit Hilfe des PAServers auf einem MAC ausführen. Aber dort werden keine TImages angezeigt?<br />
Sprich die Form wird angezeigt, die Buttons auch, aber die Bilder sind nicht da. Aber es wird auch kein Fehler gemeldet.<br />
<br />
Ich wär echt dankbar wenn mir jemand sagen könnte woran das liegt, da ich meine ganzen Programme auch auf dem Mac verfügbar machen will.<br />
<br />
mfg<br />
Hering<br />
<br />
<br />
//Edit:  Da ich von einem einfachen Ladefehler ausging, wollte ich nun die Bilder in eine .res Datei packen und per TResourceStream laden. Allerdings findet er die Bilder anscheinend nicht beim starten: <br />
---------------------------<br />
Benachrichtigung über Debugger-Exception<br />
---------------------------<br />
Im Projekt p_Main.exe ist eine Exception der Klasse EResNotFound mit der Meldung 'Ressource Bitmap_1 nicht gefunden' aufgetreten.<br />
---------------------------<br />
Anhalten   Fortsetzen   Hilfe   <br />
---------------------------<br />
<br />
<br />
Geladen wird mit:<br />
<div class="bbcode_container">
	<div class="bbcode_description">Zitat:</div>
	<div class="bbcode_quote printable">
		<hr />
		
			var Stream1 : TResourceStream;<br />
[..]<br />
Stream1 := TResourceStream.Create(HInstance, 'Bitmap_1', nil);<br />
Img_1.Bitmap.LoadFromStream(Stream1);<br />
Stream1.Free;<br />
[..]
			
		<hr />
	</div>
</div>und laut der IDE heißt die Datei Bitmap_1, neu erzeugen der .res Datei scheint auch nicht zu funktionieren</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?36-FireMonkey">FireMonkey</category>
			<dc:creator>Hering</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31631-TImage-unter-MacOS-X</guid>
		</item>
		<item>
			<title>ADOQuery auf Access Datenbank mit XE2 unter Win7 fehlerhaft?</title>
			<link>http://forum.delphi-treff.de/showthread.php?31629-ADOQuery-auf-Access-Datenbank-mit-XE2-unter-Win7-fehlerhaft&amp;goto=newpost</link>
			<pubDate>Fri, 11 May 2012 09:23:56 GMT</pubDate>
			<description>Hallo Delphifreunde,  
ich stehe vor einem absoluten Rätsel. Folgende Abfrage per ADOQuery  auf eine MS-Access Datei (.mdb) funktioniert unter...</description>
			<content:encoded><![CDATA[<div>Hallo Delphifreunde, <br />
ich stehe vor einem absoluten Rätsel. Folgende Abfrage per ADOQuery  auf eine MS-Access Datei (.mdb) funktioniert unter Windows XP  einwandfrei: <br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal> SQL.Clear; 
&nbsp;SQL.Add(<span class=hlStr>'select sum(ABFStatMenge) as aktuell from ABFStat '</span>); 
&nbsp;SQL.Add(<span class=hlStr>'where ABFStatArtNr = '</span>+QuotedStr(DataModule2.ADOTable2ArtNr.Value)); 
&nbsp;SQL.Add(<span class=hlStr>'and ABFStatDatum between #01/01/2012# and #31/12/2012#'</span>); 
&nbsp;Open; 
&nbsp;aktuell.Caption:= <span class=hlStr>'Aktuell:&nbsp; '</span>+FieldByName(<span class=hlStr>'aktuell'</span>).AsString; 
&nbsp;close; 
</span></pre></div></pre><hr />
</div>
 Fragt mich nicht warum das ganze nicht unter Win7 64-bit funktioniert. Hier wird kein Ergebnis angezeigt. <br />
Jetzt aber das merkwürdige: <b>Gibt man das Jahr zuvor ein z.B.  (#01/01/2011# and #31/12/2011#) funktioniert die Abfrage auch unter  Windows 7 64-bit.</b> !?!!<br />
<br />
Ich kann absolut nicht verstehen, warum die Abfrage mit dem  aktuellen Jahr 2012 kein Ergebnis unter Win7 bringt, (2011 funktioniert)  währendessen es unter Windows XP absolut funktioniert. <br />
<br />
Bitte dringed um Hilfe und Rat, bin schon am ausflippen! <br />
<br />
Gruß Harry</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?8-Datenbanken">Datenbanken</category>
			<dc:creator>Harry</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31629-ADOQuery-auf-Access-Datenbank-mit-XE2-unter-Win7-fehlerhaft</guid>
		</item>
		<item>
			<title>Namensgebung in einer C++ dll</title>
			<link>http://forum.delphi-treff.de/showthread.php?31627-Namensgebung-in-einer-C-dll&amp;goto=newpost</link>
			<pubDate>Wed, 09 May 2012 17:28:25 GMT</pubDate>
			<description>Guten Abend, 
 
ich bin momentan dabei, eine in c++ geschriebene .dll in ein Delphi-Projekt einzubinden. Das ist auch nicht das erste mal und soweit...</description>
			<content:encoded><![CDATA[<div>Guten Abend,<br />
<br />
ich bin momentan dabei, eine in c++ geschriebene .dll in ein Delphi-Projekt einzubinden. Das ist auch nicht das erste mal und soweit kein Problem. Aber jetzt bin ich auf eine Funktion gestoßen, die ein Struct als Übergabeparameter erwartet. Eigentlich wäre das auch kein Problem, wenn das Objekt nicht folgenden enum enthalten würde:<br />
<br />
<br />
<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;">typedef&nbsp;enum&nbsp;Procedure&nbsp;{<br />&nbsp;&nbsp;&nbsp;SRG,<br />&nbsp;&nbsp;&nbsp;OR,<br />&nbsp;&nbsp;&nbsp;NONOR,<br />&nbsp;&nbsp;&nbsp;SRG_CONFLICT,<br />&nbsp;&nbsp;&nbsp;OR_CONFLICT,<br />&nbsp;&nbsp;&nbsp;NONOR_CONFLICT_CHOP_DATE<br />};</div></pre><hr />
</div>
 Die Tatsache, dass der Enum &quot;Procedure&quot; heißt und das OR mittendrin findet Delphi ziemlich blöd.<br />
Leider liegt mir der Quellcode der dll nicht vor (Sonst hätte ich den Kram auch einfach umbenannt...).<br />
<br />
Weiß da jemand eventuell Rat?<br />
<br />
Schoneinmal einen schönen Dank im Voraus.</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?12-Systemnahe-Programmierung">Systemnahe Programmierung</category>
			<dc:creator>Grevier</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31627-Namensgebung-in-einer-C-dll</guid>
		</item>
		<item>
			<title>Problem mit paramterisiertem Generic</title>
			<link>http://forum.delphi-treff.de/showthread.php?31626-Problem-mit-paramterisiertem-Generic&amp;goto=newpost</link>
			<pubDate>Wed, 09 May 2012 15:47:18 GMT</pubDate>
			<description>Hallo alle miteinander... 
ich habe leider mal wieder ein Prob bei dem ich net weiterkomme. 
 
Bzw. bin wahrscheinlich nur zuu doff 
 
 
und zwar...</description>
			<content:encoded><![CDATA[<div>Hallo alle miteinander...<br />
ich habe leider mal wieder ein Prob bei dem ich net weiterkomme.<br />
<br />
Bzw. bin wahrscheinlich nur zuu doff<br />
<br />
<br />
und zwar habe ich folgende Proceduren eingeführt.<br />
<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal>PEvent = <span class=hlRes>procedure</span>(ASender : TObject; AEvent : TEvent) <span class=hlRes>of</span> <span class=hlRes>object</span>;
PEventValueChange = <span class=hlRes>procedure</span>(ASender : TObject; AEvent : TEventValueChanged) <span class=hlRes>of</span> <span class=hlRes>object</span>;
</span></pre></div></pre><hr />
</div>
 <br />
und dann noch nen generischen Typ alla <br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal>TDelegate&lt;T : TEvent; P&gt; = <span class=hlRes>class</span>
&nbsp; &nbsp; <span class=hlRes>var</span> FList : TList&lt;P&gt;;
&nbsp; &nbsp; <span class=hlRes>constructor</span> create;
&nbsp; &nbsp; <span class=hlRes>procedure</span> Add(AProcedure: P);
&nbsp; &nbsp; <span class=hlRes>procedure</span> Rem(AProcedure: P);
&nbsp; &nbsp; <span class=hlRes>procedure</span> doEvent(ASender : TObject; AEvent : T);
<span class=hlRes>end</span>;
</span></pre></div></pre><hr />
</div>
 wobei T den Eventypen und P die Prozedur darstellt welche aufgerufen wird.<br />
<br />
Zuletzt der Teil der Probleme macht.<br />
Das ausführen der Prozedur schlägt fehl mit der Meldung &quot;E2066 Operator oder Semikolon fehlt&quot;.<br />
<div style="margin:20px; margin-top:5px">
	<div class="smallfont" style="margin-bottom:2px"> Code
:</div>
	<hr /><pre class="alt2" style="margin:0px"><div class="code" dir="ltr" style="text-align:left;"><pre class='code'><span class=hlNormal><span class=hlRes>procedure</span> TDelegate&lt;T,P&gt;.doEvent(ASender : TObject; AEvent : T);
<span class=hlRes>var</span> Proc : P;
<span class=hlRes>begin</span>
&nbsp; &nbsp; <span class=hlRes>for</span> Proc <span class=hlRes>in</span> Flist <span class=hlRes>do</span> Proc(ASender,AEvent)
<span class=hlRes>end</span>;

</span></pre></div></pre><hr />
</div>
 <br />
Hab jetzt schon dutzende Versuche gestartet. Gestastet und alle möglichen Typ-defs probiert - NIX und <br />
einschränken des Generics geht unter Delphi nicht mit Methoden.<br />
Eigentlich sieht es für mich so, das die Typisierung fehlschlägt also &quot;Proc AS P&quot;. <br />
<br />
Bisweilen habe ich noch nichts hingekriegt von wegen C<br />
<br />
Hoffe jemand von euch hat mir nen Ratschlag.</div>

]]></content:encoded>
			<category domain="http://forum.delphi-treff.de/forumdisplay.php?13-Object-Pascal">Object Pascal</category>
			<dc:creator>sott1981</dc:creator>
			<guid isPermaLink="true">http://forum.delphi-treff.de/showthread.php?31626-Problem-mit-paramterisiertem-Generic</guid>
		</item>
	</channel>
</rss>

