Word 2007 és a szabványosság

Mióta az Office 2007 megjelent, a Microsoft boldogan lobogtatja a szabványosság zászlóját, elsősorban a fájl formátumokkal kapcsolatban. Sőt, a használhatóságát is szeretik hangoztatni, új felhasználói felület, új szolgáltatások, produktivitás!

Éppen van egy projektünk, ahol ki akartuk használni, hogy lehet közvetlenül bloggolni Word 2007-ből. Némi tanakodás után úgy döntöttünk, hogy a MetaWeblog API-t implementáljuk, amit Virág András kollégám korrektül meg is csinált, Live Writerből megy is csont nélkül. Tesztelésnél kiderült azonban, hogy Word 2007-ből a képfeltöltés elszáll, hibás paraméterezésre utaló hibaüzenettel. Nosza, nekiestünk TcpTrace-szel és kiderült a turpisság!

A MetaWeblog API-ban a képfeltöltésért a newMediaObject függvény felelős, aminek a szabvány szerint a következő a paraméterezése:

metaWeblog.newMediaObject( string blogid, string username, string password, struct mediaobject ) returns struct

Ehelyett a Word 2007 a következő szintaktikával küldi az adatokat:

metaWeblog.newMediaObject( int blogid, string username, string password, struct mediaobject ) returns struct

Az eltérő paraméterezés miatt a függvény hívás természetesen elszáll, és némi guglizás után egyértelművé vált, hogy ez nem a mi szerverünk hibája, mással sem megy. Bugos a Word 2007, pont. A lehetséges megoldás, hogy külön interfészt fejlesztünk a Word 2007-nek és külön mindenki másnak, aki képes helyesen implementálni egy elterjedt szabványt.

Kedves redmondi Word fejlesztők, ezt hogy a túróba sikerült összehoznotok? És főként mivel sikerült tesztelnetek?

 

Technorati tags: ,
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s