2009年11月8日日曜日

[C++/CLI] mt.exe : general error c101008d: Failed to write the updated manifest to the resource of file

自宅のPCでコンパイルしようとすると、標題にあるようなエラーが出てくる、、、なんかウィルスソフトが関係してるとか、マルチCPUの対応していないとかいろいろ話題になっているようだけど、どうやら、「解決策として、マニフェストファイルの埋め込みをやめる」のがいいらしい。。。

プロジェクトのプロパティで、[マニフェストツール]→[入力と出力]→[埋め込みマニフェスト]を“いいえ”にすればOKな感じ。。。

#実はそれ以外にエラーがでて実行ができないんだけど、それはまた後日、、、

2009年11月5日木曜日

C++/CLIでTwitterクライアントプログラミング~とりあえずつなげてみる~

<注意;現在、OAuth認証が必須となったようですので、下記はあまり参考にならないでしょう。>
Twitterを研究テーマにしようと検討中なので、とりあえずでC++/CLIでのTwitterクライアントを実装しています。C#はけっこうサンプルも載ってますが、C++/CLIはあんまりないので、参考になれば、、、、ま、どっちもだいたい同じなんですけどね。 下記は、WebClientクラスを使ってますが、HttpWebRequestクラスを使う方法もあります。


  String^ result;
    String^ url = "http://twitter.com/statuses/friends_timeline.xml";
    NetworkCredential^ nc = gcnew NetworkCredential(id,password);  
   // WebClientを使うなら、こんな感じ
    try{
        WebClient^ client = gcnew WebClient();
        client->Credentials = nc;

        client->Encoding = Encoding::UTF8;

        array^ data =client->DownloadData(url);
        String^ result =Encoding::UTF8->GetString(data);
        return result;

    }catch(System::Net::WebException^ e){
        //ここでなんらかのエラー処理をする
        System::Diagnostics::Debug::WriteLine("エラー:"+ e->Response->ToString());
        return "";
    }