フリーソフト

« 2006年9月 | トップページ | 2007年2月 »

[Delphi,BCB] アイコンリソースを追加したらアプリのアイコンが変わった!

rcファイルを使ってアイコンリソースをEXEファイルに埋め込んだときに、アプリケーションのメインアイコンが変わってしまうことがあります。これは、Delphi,BCBはリソース名でリソースを並び替えてしまうためにおきる問題です。

解決策としては、Delphi,BCBではメインアイコンをMAINICONの名前で保持していますので、ソートした時に、これよりも後に来るような名前を付けます。例えば、

OREICON  ICON  "aaa.ico"

のような感じです。MよりもOの方がアルファベット順が後になります。

[BCB] HTTP Encode

AnsiString __fastcall HTTPEncodeUTF8(const AnsiString AStr)
{
  WideString WStr=AStr;
  UTF8String UStr=UTF8Encode(AStr);

  AnsiString Result="";
  for (int i=1;i<=UStr.Length();i++) {
    byte Ch=UStr[i];
    if ((Ch>='A' && Ch<='Z') ||
        (Ch>='a' && Ch<='z') ||
        (Ch=='*') ||
        (Ch=='@') ||
        (Ch=='.') ||
        (Ch=='_') ||
        (Ch=='-')) {
      Result=Result+(char)Ch;
    } else if (Ch==' ') {
      Result=Result+"+";
    } else {
      Result=Result+"%"+AnsiString().sprintf("%.2X",Ch);
    }
  }
  return Result;
}

« 2006年9月 | トップページ | 2007年2月 »