Dll Plugin Übergabeparmeter

Allgemeines Feedback, Kritik und Vorschläge zum Scriptly

Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 22.05.2011 17:34

Hallo alle zusammen,

ich versuche seit 2Wochen ein DLL Plugin für den Scriptly zuschreiben das id und class in css Dateien sucht und auflistet um einen Eintrag auszuwählen und zurükzugeben. Die ActiveScript-Schnittstelle erlaubt Dateiendungen von Javascript js und DLL also Delphi oder C++.
In Javascript habe ich dies auch hinbekommen aber ich kann nichts zurückgeben, es wird also nur mit z.B showMessage angezeigt.
Vor einigen Monaten habe ich begonnen Delphi zu lernen bin zwar nicht der Crack aber ich denke ich verstehe die zusammenhänge ganz gut und habe das ein oder andere Programm schon geschrieben und sie funktionieren auch :lol: .

Jetzt zum Problem :
Wenn ich den Text der offenen Datei in die Dll Übernehmen will sollte das im Funktionsaufruf mit
Code: Alles auswählen
Text : PChar
funktionieren. Zurückgegeben sollte er mit
Code: Alles auswählen
StrPas(Text)
(laut dem Beispiel Plugin im Ordner Help). Wenn ich das somache dann bekomme ich nicht den Text ausggeben sonden Text in der Maschinenschrift(sieht so aus als wenn man z.B. eine DLL-Datei in einem Editor öffnet). Alle Versuche mit String Shortstring usw. haben das gleiche ergebnis gebracht. Auch die veränderung ander Rückgabe StrPas und StrPCopy keine Änderung.
Hat jemand schomal eine Dll für den Scriptly geschrieben bzw. weis jemand was ich noch versuchen Könnte?
Arbeite momentan mit Delphi XE Trial Version auf XP Prof.
Gruß Markus

P.S. Werde die DLLmal fertig ist stelle ich sie natürlich in der Downloadbereich
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Advertisement



Registrieren Sie sich, um diese Anzeige nicht mehr zu sehen!
 

Re: Dll Plugin Übergabeparmeter

Beitragvon Benedikt Loepp » 13.07.2011 15:01

Hi Markus,
erstmal Entschuldigung bitte für die späte Antwort. Leider haben es einige Umstände so mit sich gebracht, dass ich hier in letzter Zeit kaum aktiv werden konnte, ich denke aber, das ändert sich in Zukunft wieder ein wenig :-)

Ich kann gerne versuchen, dir bei diesem Problem weiterzuhelfen. Seien es jetzt echte Plugins auf DLL-Basis (also z. B. mit Delphi) oder Scripts (mit Javascript) ;)
Ist ja nun aber schon ein Weilchen her, daher halt ich mich mal zurück, und frag erstmal, ob die Fragen und Probleme dazu noch akut sind?

Eine Vermutung hab ich allerdings, wo du sagst, dass du mit Delphi XE arbeitest - evtl. stimmt ja irgendwas mit den String-Typen nicht :? Ist jetzt wie gesagt nur eine Vermutung, ich selbst habe da noch keine Erfahrungen diesbezüglich gemacht, aber ich weiß nicht, wie ein mit Unicode-fähigem Delphi entwickeltes Plugin (z. B. XE) mit einem Programm eines nicht Unicode-fähigen Delphi (wie eben der Scriptly, welcher mit Delphi 7 kompiliert ist), zusammenspielt. Möglicherweise musst du da nicht StrPas sondern eine andere Funktion verwenden? Da bin ich mir allerdings nicht sicher und müsste dass dann selbst ausprobieren ;)

Schönen Gruß, Benedikt Loepp
Benedikt Loepp
Administrator
 
Beiträge: 2729
Registriert: 17.06.2005 18:30
Wohnort: Lünen

Re: Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 13.07.2011 22:23

Hallo Benedikt,

freut mich das du wieder Zeit findest und deine "stressige " Zeit überwunden hast.
Benedikt Loepp hat geschrieben:und frag erstmal, ob die Fragen und Probleme dazu noch akut sind?
Jein, Ja ich bin immer noch am schreiben dieses Plugins, Nein im Moment fehlt mir die Zeit um daran weiter zu arbeiten.

Das mit dem Delphi XE habe ich auch schon vermutet, auch wenn ich es nicht so genau begründen hätte können. Darum habe ich mir "Delphi for Kids"(da ist eine Vollversion von Delphi7 dabei ;) ) besorgt damit könnte es vielleicht gehen das dürfte dann die gleiche "Wellenlänge" haben. Nur bin ich noch nicht dazu gekommen es zu Probieren.
Benedikt Loepp hat geschrieben:Da bin ich mir allerdings nicht sicher und müsste dass dann selbst ausprobieren

Ne du brauchst da nichts auszuprobieren dafür ist deine Zeit viel zuschade. Meistens braucht man nur einen kleinen Schubs in die richtige Richtung und schon findet man den richtigen Weg. Ich denke diesen Schubs habe ich gerade bekommen! ;) Danke!!

Wenn ich wieder dran arbeite und noch was unklar ist melde ich mich wieder (oder wenn das Plugin fertig ist).

Gruß Markus
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Re: Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 17.09.2011 07:04

Hallo,
also ich arbeite wieder an dem Plugin. Das Problem mit der nicht richtigen Text Übergabe ist gelöst es lag wie Benedikt vermtet hat an der "falschen" Delphi Version. Mit der Delphi7 PE Übergibt er den richtigen Text und auch Vollsändig :D .
Mein neues Problem ist wie bekomme ich z.B. projectDirectory (aus der Schnittstellen Dokumentation) als String in die DLL? Der gleiche Weg wie mit dem Text funktioniert nicht (im Funktionsaufruf
Code: Alles auswählen
projektDirectory: PChar
).
Als Variable anmelden und dann im Programm zuordnen
Code: Alles auswählen
projektDirectory:=application.projektDirectory
geht auch nicht :( .
Manchmal bekomme ich (wenn ich meine DLL ausprobiere) eine Fehlermeldung von Zugriffsverletzung 000000.Hauptsächlich wenn ich nach anderen string property in der DLL angebe(diese Fehlermeldung habe ich dir noch nie gesendet da das Problem ja nicht am Scriptly liegt sondern an meiner DLL).
Wahrscheinlich sehe ich mal wieder mal den Wald vor lauter Bäumen nicht oder, was ich eigentlich nicht glaube, Scriptly übergibt andere string property nicht. :?

Gruß Markus

P.S. @Benedikt Bitte erst Antworten wenn Du Zeit findest ist nicht so wichtig.
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Re: Dll Plugin Übergabeparmeter

Beitragvon Benedikt Loepp » 19.09.2011 10:10

Hi,
ich glaub du vermischst grad die ActiveScript-Schnittstelle (für JS) und die Pluginschnittstelle... ;)
Um im Plugin das Projektverzeichnis zu erhalten, musst du es als Weaverslave-kompatibles Plugin entwickeln. Auf diese Weise geht das auf jeden Fall. Das Beispielplugin was dem Scriptly beiliegt hat eine deutlich begrenztere Schnittstelle, welche diese Information nicht zurückliefern kann ;)

Schönen Gruß, Benedikt Loepp
Benedikt Loepp
Administrator
 
Beiträge: 2729
Registriert: 17.06.2005 18:30
Wohnort: Lünen

Re: Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 20.09.2011 06:35

Hallo,
Benedikt Loepp hat geschrieben:ich glaub du vermischst grad die ActiveScript-Schnittstelle (für JS) und die Pluginschnittstelle...

Ja das habe ich vermischt. :lol:
Benedikt Loepp hat geschrieben:musst du es als Weaverslave-kompatibles Plugin entwickeln

Das kenne ich dieses Plugin. :D
Danke für die Antwort hat mir sehr weiter geholfen!!

Gruß Markus
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Re: Dll Plugin Übergabeparmeter

Beitragvon Benedikt Loepp » 23.09.2011 19:49

Kein Problem, wenn weitere Fragen gibt, dann immer her damit :)
Gruß, Benedikt Loepp
Benedikt Loepp
Administrator
 
Beiträge: 2729
Registriert: 17.06.2005 18:30
Wohnort: Lünen

Re: Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 07.10.2011 20:35

Hallo,

Es geschehen noch Zeichen und Wunder ich habe es tatsächlich geschafft das Plugin "ID_suchen" zuschreiben und es funktioniert sogar :lol: .

@Benedikt
Meine Frage wo soll ich es einstellen in diesem Tread oder soll ich im Downloadbereich einen neuen Tread aufmachen oder es in der Datenbank unten anfügen?

Gruß Markus

P.S. Das Plugin ist im Moment noch so eine Art "Testversion" da ich gerne noch Meinungen hätte was zu verbessern ist.
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Re: Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 08.10.2011 14:26

Hallo,

wollte noch schnell :lol: meine Dll mit einem Icon verzieren aber irgendwie scheint das nicht zu funktionieren.

Hat mir jemand einen Tipp wie man das machen könnte oder sehe ich den Wald vor lauter Bäumen nicht mehr?
Ich denke ich muß das Ticon einbinden aber wo und wann? :?:
Im Inet habe ich nichts dazu gefunden oder ich habe falsch gesucht (oder die Leut von Googel haben mich falsch verstanden :lol: ) !

Gruß Markus
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Re: Dll Plugin Übergabeparmeter

Beitragvon Benedikt Loepp » 09.10.2011 09:28

Hi,
schön dass du es geschafft hast :mrgreen:

Zu deinen Fragen:
raum40302 hat geschrieben:Meine Frage wo soll ich es einstellen in diesem Tread oder soll ich im Downloadbereich einen neuen Tread aufmachen oder es in der Datenbank unten anfügen?
Ich würde vorschlagen, lads doch einfach erstmal hier im Thread hoch - du sagst ja selbst, es ist noch eine Art Testversion ;) So können ich und vielleicht noch weitere User erstmal ein wenig testen, und es kann beizeiten immer noch in den Downloadbereich.

raum40302 hat geschrieben:wollte noch schnell :lol: meine Dll mit einem Icon verzieren aber irgendwie scheint das nicht zu funktionieren.

Hat mir jemand einen Tipp wie man das machen könnte oder sehe ich den Wald vor lauter Bäumen nicht mehr?
Du musst einfach eine .ico-Datei mit ins Plugin-Verzeichnis werfen ;) Kannst dich ja an den anderen, bereits vorhandenen Plugins orientieren :)

Schönen Gruß, Benedikt Loepp
Benedikt Loepp
Administrator
 
Beiträge: 2729
Registriert: 17.06.2005 18:30
Wohnort: Lünen

Re: Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 09.10.2011 11:24

Hallo Benedikt,

Benedikt Loepp hat geschrieben:Du musst einfach eine .ico-Datei mit ins Plugin-Verzeichnis werfen


Also bei mir Funktioniert das nicht, es kommt wenn ich Scriptly starte ein Fehler von Zugriffsverletzung (Fehlerbericht habe ich Dir vor ein paar Minuten gesendet). Wenn ich den Fehler quasi wegklicke startet Scriptly aber er zeigt die Symbolleisten nicht mehr richtig an sonst scheint alles zu Funktionieren. Wenn ich den Scriptly dann wieder schliesse kommt noch ein Fehler mit dem FTP lader???????????
Wenn ich das Icon aus dem Plugin Verzeichnis wieder lösche ist alles wieder wie vorher und Funktioniert Tadellos.
Deshalb war ich eben auf dem Weg das Icon über die RES Datei einzubinden, aber das würde ja bedeuten es würde nur zur Laufzeit des Plugins angezeigt Oder?? :?

Ich stelle das Plugin jetzt mal zum Download rein. Das Icon im zweiten Download.

Achtung

Das Icon bitte noch nicht in den Plugin Ordner machen da es damit noch einen Fehler gibt s.o.
Ich liefere das Icon mit falls es jemanden gibt der es ausprobieren möchte. Ansonsten einfach das Icon fehlen lassen wird halt das ein weises Blatt angezeigt wenn kein Icon zugewiesen ist.

Plugin Downloaden in das Verzeichnis eurer Wahl, entpacken und in den Plugin Ordner kopieren oder verschieben. Wo der Plugin Ordner sich befindet steht in der Hilfe.
Scriptly starten und das Plugin sollte unter Extras angezeigt werden das Plugin heist "ID_suchen".
Benutzung:
Curser an die Stelle gehen an der die ID eingefügt werden soll. Jetzt das Plugin starten(Extras->ID_suchen klicken) und es werden die im Projekt ab gespeicherten .css dateien (es können mehrere Dateien sein) ausgelesen und die IDs gesucht und im Plugin ausgegeben. Jetzt die gewünschte ID auswählen (mit der Maus drauf klicken) und auf den Button "id übernehmen" klicken. Die ausgewählte ID sollte nun an der Curser Position eingetragen sein. Button "abbrechen" muß ich denke ich nicht erklären. Button "id laden" ist momentan noch nicht belegt also nur zur deko :lol: .
Das Plugin funktioniert momentan nur wenn die ID in einer CSS Datei steht und ein Projekt geöffnet ist(eine Verbesserung diesbezüglich ist geplant). Geplant ist ebenfals ein weiteres Plugin um class zu suchen. Da währe es interresant zu wissen ob man zwei Plugin (eins ID eins CLASS) oder nur eins wo beide angezeigt werden schreiben sollte.
Verbesserungs Vorschläge und Kritik höre ich gerne und versuche sie dann umzusetzten.
Bedanken möchte ich mich noch bei Benedikt für seine Hilfestellung und das Augen öffnen hier im Forum.
Ein weiterer Dank geht an Thomas Weinert ohne desen Plugin für den weaverslave würde es dieses Plugin nicht geben. Sein Plugin ist das Fundament von meinem Plugin.
Im voraus bedanken möchte ich mich bei den User die das Plugin Testen und Rückmeldung geben.
So nun trot allem viel Spaß mit dem Plugin

Gruß Markus
Zuletzt geändert von raum40302 am 09.10.2011 19:23, insgesamt 1-mal geändert.
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Re: Dll Plugin Übergabeparmeter

Beitragvon Benedikt Loepp » 09.10.2011 13:29

Hi,
womit hast du denn das Icon erstellt? Wenn ich versuche, dass mit meinem Icon-Bearbeitungsprogramm zu öffnen, weigert sich das nämlich :?

Gruß, Benedikt Loepp
Benedikt Loepp
Administrator
 
Beiträge: 2729
Registriert: 17.06.2005 18:30
Wohnort: Lünen

Re: Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 09.10.2011 15:01

Hallo benedikt,
erstellt habe ich das mit AWicons-lite, ich kann das Icon aber auch mit IcoFX öffnen.
Das das erstellte icon nicht passen könnte darauf bin ich noch nicht gekommen. :oops:
Habe gerade ein im Plugin Ordner vorhandenes umbenannt und jetzt geht es es ist also Mein erstelltes Icon das quer treibt. :lol: Ok dann entschuldige, das ich deine Zeit vergeudet habe bloß weil ich wieder mal nicht nachgedacht habe, ich versuch mal ein anderes Programm zum erstellen des Icons.

Danke
Gruß Markus
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Re: Dll Plugin Übergabeparmeter

Beitragvon Benedikt Loepp » 09.10.2011 15:10

Macht nix ;) Dass es offenbar solche Kompatibilitätsprobleme bei Icons geben kann, ist ja nun auch nicht unbedingt zu erwarten...
Gruß, Benedikt Loepp
Benedikt Loepp
Administrator
 
Beiträge: 2729
Registriert: 17.06.2005 18:30
Wohnort: Lünen

Re: Dll Plugin Übergabeparmeter

Beitragvon raum40302 » 09.10.2011 19:40

Hallo nochmal,

also das mit den Icon ist gelöst denke ich, verstehen tu ichs zwar nicht aber so ist es halt. Wenn man, egal mit welchem Icon Programm, das Icon erstellt und die Größe 16 X 16 Pixel macht(so wie die anderen im Plugin Ordner) geht es nicht :?: . Wenn man aber 32 X 32 Pixel macht (egal mit welchem Programm) dann klappt es. Ich verstehe es nicht :lol: !!
Ich habe den Download oben wieder entfernt lade es jetzt nochmal hoch.
Einfach alle drei Dateien (.dll .ico .dat) in den Plugin Ordner Kopieren. Habe noch eine kleine Erweiterung geschrieben,
wenn das Plugin keine .css dateien findet kann man eine Datei über den Öffnen Dialog eingeben.

Wie gesagt Verbesserungsvorschläge und Kritik sind gerne gehört, nur raus damit.

Viel Spaß mit dem Plugin

Gruß Markus
P.S. Hab noch CLASS_suchen geschrieben(bzw. Kopiert und entsprechend geändert) :lol:
raum40302
Engagiertes Mitglied
 
Beiträge: 190
Registriert: 05.02.2011 23:18
Wohnort: Am Bodensee

Nächste

Zurück zu Allgemeines



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast

cron