31. august 2001 - 10:52Der er
15 kommentarer og 1 løsning
Så er Borland godt igang med at grave sin egen grav !!!!!
Problemet med proxies, borlands svar på en forespørgsel på hvornår vi får en løsning
a) README.TXT -------------- Compatibility issues ------------------------------
* Design-time packages that used ToolsAPI now also require designide.
--------------
Proxies er en del af denne pakke.
b) license.txt -------------- You may NOT redeploy Borland-supplied design-time-only packages. You may not recompile or redistribute any Borland-supplied components or libraries for use by other developers.
Packages that you develop may not have the same names as Borland-supplied packages. If you distribute component libraries or other packages, it is recommended that you avoid using the default DCLUSR60 package name, since this will cause naming conflicts with other developers. --------------
Hej Martin, jeg forstår ikke helt hvor du vil hen med at Borland graver sin egen grav? Man har da aldrig måtte sende borland pakker med ud med sine egne ting?
Men det helt store problem er at man ikke kan lave sine egne comp. med din egen editor til, det kan ikke lade sig gøre da man ikke kan gøre et project afhængig at en designtime package.
Jo det kan du godt. MEN du må bare ikke lægge editoren ind i den samme pakke som din komponent fordi så kan du ikke kompilere projektet. Borland anbefalede allerede under Delphi 5 at man adskilte Designtime og runtime packages men under Delphi 6 KRÆVER de det bare. Så læg dine editore ud i pas filer for sig selv og så er du oppe at køre igen.
Hmmm - har downloaded en D5 komponent med source til - det er lykkedes mig fint - efter en del besvær med designintfs osv. - at få den kompileret og installeret.
Desværre har den en propertyeditor, som ikke lige har taget højde for det med at adskille designtime og runtime packages, så selvom jeg godt kan smide komponenten på en form, så kan jeg ikke kompilere projektet, fordi proxies.pas bliver inkluderet. Træls...!
Så løsningen må være at adskille tingene fra hinanden og dublere noget kode (smart, ikke!), så skidtet kan kompileres uafhængigt af property editoren.
Jeg har fundet løsningen, du SKAL adskille koden uden at dublere, og så må du ikke use din editor fra din comp. ( du kan som hack gå in i D6 unit\'en der user proxies og sætte {} rundt om, det compilerer uden fejl )
Nej, den kompilerer nemlig ikke uden fejl - har skam prøvet, men det er selvfølgelig fordi komponenten og property-editoren er sovset ind i hinanden. Så det nemmeste (læst hurtigste) er nok at adskille ved at dublere, da property-editoren og komponenten deles om nogle units - og en af disse units bruger altså Proxies.pas.
Jo du kan sagtens få den til at compilere uden fejl, har selv gjort det, det gik fint, ellers lan en unit du kalder proxies.pas og læg den ene rutine i som der bliver kaldt i proxies ( kan ikke lige huske hvad den hedder, det burde du kunne finde i gamle spm )
Nu har du jo altså ikke set den komponent det drejer sig om, så derfor kan du selvfølgelig ikke udtale dig om præcist den.
Men ideen med at lave en separat proxies.pas er da glimrende, nu har jeg bare ikke den oprindelige proxies.pas så jeg kan kopiere kildekoden fra den...! Havde jeg det, var der jo ikke noget problem.
Se nu laver i jo en workaround sådan at i alligevel kan komme uden om det som der er blevet udstukket som god programmeringsskik, nemlig ikke at få componenteditors kompileret med i sine endelige .exe filer. *sign*
Nå men i har jo sikkert jeres grunde. Og forresten så behøves man ikke at dublikere kode da man jo kan lægge alt kode i sammen med komponenten og så ellers bare bruge det inde fra sin komponenteditor.
Kim: Det specifikke problem er at få en eksisterende tredjeparts komponent til at virke - jeg gider sådan set ikke reprogrammere den for at bruge den...!
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.