Vreau să fac două modificări în Windows Live Writer şi, cum au trecut doi ani de când am luat legătura cu oamenii de la Microsoft şi nu s-a întâmplat nimic, poate reuşesc să fac asta de capul meu.
WLW e ăsta. Schimbările pe care le vreau sunt relativ simple (cred):
- să nu mai verifice EXIF-ul unei poze şi să transforme JPG-ul în PNG dacă nu găseşte nici un EXIF. e enervant.
- să facă thumbnailuri cropped, nu ţinând cont de aspect ratio.
Dacă e cineva care se pricepe şi crede că poate, să îmi dea un semn în comentarii sau pe email. Plătesc, în limite rezonabile, pentru munca depusă.
Ai sursa de la WLW?
@Ionut: nu. din ce am bunghit, chestiile astea se află in nişte DLL-uri, care pot fi dezasamblate. cred.
Mda, în cazul ăsta îţi trebuie un programator destul de serios care să se priceapă foarte bine la reverse software engineering. Cei de la Microsoft nu cred că or să se deranjeze prea tare cu cererea ta, având în vedere faptul că nu este un software cu price tag.
Mă miră faptul că nu a apărut o variantă open source a acestui softare având în vedere mărimea comunităţii wordpress. Nu cred că ar fi dus lipsă de donaţii. En fin.
Ideal ar fi să scrie cineva un plugin care să te ajute să scapi de cele două probleme semnalate de tine. Îţi recomand cu căldură să te duci pe freelancer.com şi cred că te rezolvă un indian cu câţiva dolărei.
Personal, fără sursă sunt legat. Pe lângă asta, mai este și un paragraf prin license agreement care interzice alterarea softului. Cel puțin așa îmi amintesc.
Hai mă ce mama mă-sii, că-i o leșie de program, nu un motor de BMW.
Da-ți-mi un serial key pentru Paint și vi-l rezolv în 3 minute.
Alternative la WLW te intereseaza?
https://www.shoutmeloud.com/5-user-friendly-alternatives-to-windows-live-writer.html
@Robert Dumitrescu: absolut. condiţia fiind să pot scrie articolele folosind tema blogului. poate vreunul din softurile din linkul tău să facă asta?
https://docs.microsoft.com/en-us/office/
Din ce vad, WLW are un API cu care se pot crea pluginuri; problema e ca, fugitiv, nu prea am vazut pe acolo ceea ce ai brea tu sa faci. In teorie, pare a fi un lucru customizabil din acel API si aservit prin intermediul unui plugin ad-hoc; daca nu e posibil prin intermediul vreunui API/SDK, nimeni nu iti va face ceea ce doresti pentru ca e imposibil, de catre un muritor de rand, sa modifice un binar adaugand/mutand cod ca sa faca ceea ce doresti tu.
@DFT nu e imposibil sa faci reverse engineering pe un binar . E pierdere majora de timp doar . DAR e usor ilegal, confom tuturor licentelor Microsoft .
wlw e managed (.net) ceea (cred) ca va complica mult incercari de reversing.
cum s-a spus si mai sus solutia cu plugin s-ar putea sa-ti permita schimbarea comportamentului pentru jpg/png.
*hooking-ul cred ca e legal, dar nu stiu daca e posibil in .net*
off-topic: @zoso, Logo-ul de sus arata ciudat pentru ca nu e transparent. Despre img asta vorbesc:
nu am lucrat cu LiveWriter (notepad este suficient pentru orice html :P), insa categoric cred ca se poate face ceva si nu te costa nimic ,poate vreo bere cand ajung prin RO.Am nevoie de niste sample’uri concrete,de exemplu sunt nelamurit la asta („să transforme JPG-ul în PNG” de ce ai vrea asta doar creste size’ul), dar daca e detaliem prin email.
@GigiKent: long story short, atunci când inserezi o imagine jpg in program, o verifică. dacă are exif, o lasă in pace. dacă nu, o transformă in png. nu ştiu de ce ar vrea să facă asta, dar aparent un inginer de la microsoft s-a gândit că ar fi util. asta ar fi problema cea mai mică, mă seacă mai mult cealaltă, cu thumbnailurile făcute cu ratio.
Salut,
Cere timp ceea ce vrei tu. Ce sistem de operare folosesti si pe cati biti? Pentru ca mie imi da link catre versiunea de XP, 32 de biti.
Stiu C, assembler x86 si assembler amd64.
@DTF – Am modificat un binar adaugandu-i o sectiune de cod astfel incat sa faca ce doream eu. FOARTE complex, dar functioneaza. Insa la fiecare update (minor sau major), trebuie sa rescriu bucata mea de cod in assembler. Insa programul meu era abandon-ware si nu mai are update-uri.
Ai bagat like si dislike ca sa ne demonstrezi cati idioti il folosesc ?
Intreaba-i pe cei care au ti-au dat dislike la comentariul 2, cand au facut ultima data un reverse engineering la un dll avand in vedere ca microsoft ofera 3 apiuri (plugin, customization si aplication) plus apiul wordpress. Eu nu-s pe felia asta, dar un baiat cu experienta pe apiul wordpress se poate prinde repede ce metoda de clasa este chemata cand executa conversia in png, dupa ce decompileaza apiul. Decompilatul este cea mai mica problema.
Iti pot face un script php unde uploadezi o arhiva, ii dai dimensiunile si iti face thumbnail-urile, le rearhiveaza si le poti downloada…
@Empire: wow. pur şi simplu wow.
nu este nevoie sa dezasamblezi sau sa aplici pachuri at runtime decat in cazuri extreme, solutia care o vad aici foarte facila este sa aplici un post fix dupa ce writerul a terminat treaba,mai clar trebuie sa identifici dupa criteriile dorite ce poze au fost stricate si sa le suprascrii direct in site utilizand un ftp,se poate scrie un plugin de writer, c#, javacript+nodejs sau alt limbaj care ti se pare mai comod,in caz ca vrei sa introduci si alte criterii ulterior.
@GigiKent: chestia asta cu suprascrierea o fac manual, dar faza e că wlw imi face thumbul 100×60 şi publică articolul cu dimensiunile astea. dacă eu urc un thumb la 100×100, arată deformat.
zi-mi la cine apelez pentru un plugin/fix.
GigiKent speaks the truth
Vali, cred că te trolează grav vizitatorii. Toate comentariile tale au câte minim un thumbs down indiferent de conţinut. Ori ai prea mulţi duşmani ori Mircea Badea a găsit o metodă bună prin care să-ţi afecteze grav orgoliul de internaut.
@Ionut: ratingurile nu mi se aplică şi mie
se poate modifica html ,se poate injecta un javascript care sa o faca automat sunt posibile n solutii de aceea ti-am cerut un sample (html+poze) ca sa deduc paternul.
1)trebuie stabilite criterile de identificare defecte
2)fixurile necesare pt fiecare defect
Am incercat asta cu WLW 2012 (Build 16.4.3505.912) pe Win8 si pare sa nu faca asta. I-am dat un JPEG fara exif si l-a exportat jpg cu aspect corect.
Ori folosesti o versiune veche ori nu inteleg eu exact problema.
In alta ordine de idei.
M-am uitat in cod si cred ca daca e o problema atunci trebuie sa fie in WindowsLive.Writer.CoreServices.dll mai exact in ImageHelper2.cs sau in WindowsLive.Writer.PostEditor.ImageInsertion undeva pe linia: writeImage()
Din cate vad, intern, WLW foloseste PNG si in multe locuri unde exista o Exceptie, extensia este convertita in PNG. De aici trag concluzia ca poate EXIF-ul tau e broken (si nu inexistent) sau poate are altfel de problema.
In general WLW foloseste EXIF-ul ptr. a vedea daca imaginea trebuie rotita.
Poti sa pui un JPEG problema undeva pe net?
In ceea ce priveste decompilarea…
Trebuie sa decompilezi (folosind e.g. Reflector- codul nu e obfuscated), modifici codul si apoi sa-l recompilezi si sa inlocuiesti dll-ul original. Operatiunea asta e probabil ilegala. Daca problema ta e „reproducible”, bug-reportul e clar si daca echipa windows live inca mai exista ar trebui sa poata sa o corecteze rapid.
@decoder:
problema e două. una, thumbul cu aspect normal pe care eu il vreau cropped şi jpegul fără exif. am semnalat una dintre probleme la MS pe 1 februarie.
văd că acum nu mai exportă in png sau nu mai găsesc eu jpg-ul potrivit.
Nu trebuie decompilat codul programului, se poate crea un plugin in C# care sa modifice imaginile imediat dupa ce apesi pe Publish. Ideea e ca cel care iti creeaza pluginul trebuie sa aiba un sample de postare de la tine ca sa stie cum sa acceseze obiectele de tip content. E ceva similar cu asta (metoda GeneratePublishHtml).
Ar mai trebuie eventual o biblioteca de prelucrare de imagini pentru conversie/crop, adica un .dll in plus.
Pune un edit la articol daca te rezolva cineva ca poate incerc si eu dar momentan nu am timp.
@zoso: Acum cred ca am inteles. Vad bug-ul. Cred ca e in editor. Se pare ca adauga niste pixeli deampulea ori de cate ori te joci cu butoanele.
Dar cred ca am gasit un workaround.
Creaza-ti un Custom Size de e.g. 100×100 la Small si tot timpul cand apesi pe Custom Size -> Small thumbnailul se „corecteaza”. Asa ca in final, inainte de publish apasa pe Custom Size -> Small si cred ca o sa mearga.
Am pus aici un video
https://youtube.com/watch?v=5fvRphVDBV0
si aci un exemplu la mine pe blog:
Ajuta?
@decoder: colegu. la o imagine pătrată e normal să facă un thumbnail pătrat. pentru că păstrează aspect ratio.
eu caut o metodă să nu mai ţină cont de ratio când face un thumb.
cool se pare ca o sa ai problema rezolvata Zoso la cat flame e pe forum
@decoder nu trebuie sa modifici binar nici un .net dll poti sa faci modificari la runtime in memorie ceea ce e foarte legal ,mai precis aici trebuie sa modifici proprietatile obiectelor care vor fi prelucrate si nu apelul functiilor
check this
https://archive.codeplex.com/?p=cracknetproject
or this
http://www.digitalbodyguard.com/
dar inca o data nu va fi nevoie de chestii sofisticate
@zoso: imaginea mea (JPEG) nu era patrata initial.
am incarcat-o in WLW si am facut-o patrata cu Crop.
pastrarea aspectului nu se poate face decat prin crop (sa tai o bucata din imagine) sau overscan/underscan.
(e.g. sa umple output-ul cu spatiu gol sus/jos sau stanga/dreapta).
WLW nu suporta overscan/underscan.
@decoder: din nou, eu vreau să facă thumb pătrat la imagini nepătrate. că dacă voiam la imagini pătrate, asta ştiam că poate face.
Exemplu de overscan/underscan… imaginea 2
@zoso: ok. ai zis: să facă thumbnailuri cropped, nu ţinând cont de aspect ratio si de aici am plecat pe o pista gresita.
atunci, daca vrei ca thumbnailul sa fie patrat, nu ramane decat solutia cu banda alba (sau transparenta) sus/jos sau dupa caz stanga/drepta
@decoder: nu mă deranjează nici una dintre soluţii, atâta timp cât se face automat. adică drop poza in program şi el face automat thumb cropped/pătrat.
(cropped inseamnă că nu ţine cont de aspect ratio. mă gândeam că se înţelege)
Vin și eu cu o idee, deși nu am văzut încă binarele de la WLW: Dacă dll-urile sunt semnate nu prea sunt șanse să le modifici ca să le poți folosi mai apoi (din WW).
Când am timp instalez și verific. Btw, ce versiune de windows/wlw folosești? Ar fi foarte folositor să nu pierd timpul aiurea cu versiuni greșite.
@Daniel A.: w7 ultimate, 64biţi, wlw ultimul.
Măh, toată lumea se înghesuie cu soluții și work-around-uri. Știu că nu am timp de proiectul ăsta, am altele pe țeavă acum și cred că te interesează să ai soluția mai repede decît pot eu, dar îmi dau și eu cu părerea că nu costă.
1) Dacă nu ai sursa nu e rentabil să poți modifica programul. Nu că nu se poate, se poate. Dar nu e rentabil. Vorbesc de timp=bani=energie consumată.
2) Windows Live Writer are SDK. Are plugin-uri gen ‘Polaroid picture’ https://login.live.com/login.srf?wa=wsignin1.0&rpsnv=13&ct=1473395454&rver=6.4.6456.0&wp=MBI_SSL_SHARED&wreply=https:%2F%2Fmail.live.com%2Fdefault.aspx%3Frru%3Dinbox&lc=1033&id=64855&mkt=en-US&cbcxt=mai . Dacă se poate face așa ceva, se poate face și ce vrea Vali. Se pot face amîndouă request-urile, poate cu două plugin-uri.
3) @Vali ai încercat să vezi pe https://login.live.com/login.srf?wa=wsignin1.0&rpsnv=13&ct=1473395463&rver=6.4.6456.0&wp=MBI_SSL_SHARED&wreply=https:%2F%2Fmail.live.com%2Fdefault.aspx%3Frru%3Dinbox&lc=1033&id=64855&mkt=en-US&cbcxt=mai să vezi dacă există oameni cu aceeași problemă ca și tine?
*corecție: nu e rentabil să modifici programul, la #1*
asa cum am zis problema este rezolvabila printr-un plugin sunt aici exemple open source https://archive.codeplex.com/?p=wlwplugins
sau printr-un post fix,
am solicitat pana acum de vreo 3 ori un scenariu sample clar asta e html astea sunt pozele asta iese si vreau asta nu am timp sa orbecai pe chestii partiale nu am folosit wlw si nu vreau sa il folosesc mai mult decat este necesar.
Daca am asta promit sa te rezolv.
@GigiKent: ok, my bad.
ăsta e htmlul: https://zoso.ro/seriale-revolution-mob-doctor/
imaginea inserată in articol: https://zoso.ro/img/2020/12/brave.jpg
thumbul rezultat, păstrându-şi proporţia, are 100×98:
aceeaşi poveste si aici https://zoso.ro/lichid-parbriz/
@GigiKent: Am inceput plugin-ul ieri, daca ai chef poti sa continui:
wlw-thumbnail-cropper-read-only
@zoso: am corectat ce mai era corectabil ieri insa se pare ca dintr-un motiv obscur WLW scoate „a href-ul” asa ca thumbnailul nu are link si trebuie sa-l faci manual. restul e facut.
aici e binary-ul:
@decoder: nope, tot la fel face. thumb la thumb şi link către thumb. https://imgur.com/MU5fF.png
@decoder thx o sa arunc pe el un ochi in weekend