2008-10-30 6 views
7

Comme le titre l'indique, j'ai une application Windows écrite en C++ à partir de laquelle j'ai besoin de faire des appels à des services d'épargne à distance, et je suis un peu perdu sur le sujet, d'être honnête. http://wiki.apache.org/thrift/ThriftInstallationWin32 indique que "la bibliothèque d'exécution Thrift C++ fonctionne actuellement sous Windows". Cela signifie-t-il que je n'ai pas de chance, ou y a-t-il une solution?Faire des appels Thrift à partir d'une application C++ dans Windows

+0

"Est-ce que cela signifie que je suis de la merde de chance", LOL :-p –

+0

Quelqu'un a édité cela en raison de "blasphème possible". Laisse mon choix de langue seul, s'il te plaît. – korona

+0

@korona SO est un wiki. Si vous n'êtes pas à l'aise avec les autres personnes qui modifient vos questions, n'utilisez pas ce site. – meagar

Répondre

3

Il pourrait ne pas être une solution élégante, mais au moins il devrait fonctionner:

Selon le Thrift Wiki, il y a C# -bindings, mais ils devraient être appelés liaisons .NET: il n'y a rien C# - spécifique à leur sujet. Vous pouvez donc implémenter votre bibliothèque de communication dans une bibliothèque dll C++/CLI et référencer ce fichier .dll depuis votre code non managé.

1

Cette page semble assez simple. Ils vous disent comment faire le compilateur Thrift mais indiquent, en termes non équivoques, que le métacode de celui-ci ne compilera pas sous Windows.

Donc, à court d'obtenir quelqu'un pour comprendre comment le compiler sous Windows, vous sont de la chance.

Pour être honnête, je ne vois pas comment cela serait un gros problème, d'autant plus que Cygwin fournit assez bien tout ce dont vous avez besoin pour compiler des sources UNIX sous Windows. Je ne peux que suggérer qu'ils doivent utiliser des fonctionnalités UNIX assez ésotériques.

Il y a un certain nombre d'approches de prendre d'ici:

1/Comme il est entré dans l'incubateur Apache, il peut y avoir des plans pour prendre en charge Windows (même si je ne trouve pas). Si c'est vraiment open source et qu'un besoin est identifié, il est probable que quelqu'un commencera à porter les runtimes vers Windows. Vous ne pouvez peut-être pas attendre.

2/Pourquoi le monde avait besoin un autre Le mécanisme RPC me dépasse. Mais vous pouvez utiliser l'un des mécanismes RPC déjà existants (SUN/ONC) ou votre propre protocole RPC pour communiquer depuis votre boîte Windows vers une boîte UNIX, qui transmet ensuite le RPC via Thrift. Mais c'est un kludge et je ne le ferais pas par principe.

À part ça, je ne peux pas vous suggérer autre chose, désolé. Bonne chance.

Questions connexes