はじめまして。
現在、リッチテキストに EM_AUTOURLDETECT を設定し、URL自動検出を行っています。
英数のみのファイル、URLなら問題ないのですが、日本語が含まれると自動検出してくれ
ません。
URLは仕方ないとして(最近では日本語ドメインもありますが)ファイルやフォルダに日
本語が使われる事は多々ありますよね?
EM_AUTOURLDETECTのヘルプを見ると「空白を含まないもの」とあります。
2バイト文字も自動検出する方法をご存知の方、もしくは違う方法をご存知の方、この打
開策を教えてください。よろしくお願いします
URLにASCII(の一部の文字)以外って含めることができましたっけ。
エスケープしないといけないのでは?
イントラネット環境で使用する、グループウェア(のような物)を作ってまして…
実際URLで2バイト文字を使用することは殆ど無いのですが、
ファイルサーバにあるファイルにハイパーリンクを張るときなどに困っております。
とりあえず,RFC1738見てみましたが,
> fileurl = file:// [ host | localhost ] / fpath
> fpath = fsegment *[ / fsegment ]
> fsegment = *[ uchar | ? | : | @ | & | = ]
> uchar = unreserved | escape
> unreserved = alpha | digit | safe | extra
> safe = $ | - | _ | . | +
> extra = ! | * | ' | ( | ) | ,
> escape = % hex hex
#host, alpha, digit, hexは省略
となっています。
つまり,2バイト文字はURLに含まれません。
%使ってエスケープすれば処理してくれるのでは?
これはスペースも一緒で,
file://localhost/C:/Program Files/
は不正なURLで,
file://localhost/C:/Program%20Files/
は正当なURL(C:\Program Files\)です。
YuOさんお付き合いくださってありがとうございます。
VC初心者なので、エスケープというのがわかりませんが、ちょっと調べてみます。
ありがとうございました。
解決済みにするの忘れてました