EM_AUTOURLDETECTで日本語

[戻る]
tty 2002/06/24(月) 10:32:43
はじめまして。

現在、リッチテキストに EM_AUTOURLDETECT を設定し、URL自動検出を行っています。
英数のみのファイル、URLなら問題ないのですが、日本語が含まれると自動検出してくれ
ません。
URLは仕方ないとして(最近では日本語ドメインもありますが)ファイルやフォルダに日
本語が使われる事は多々ありますよね?

EM_AUTOURLDETECTのヘルプを見ると「空白を含まないもの」とあります。
2バイト文字も自動検出する方法をご存知の方、もしくは違う方法をご存知の方、この打
開策を教えてください。よろしくお願いします

YuO [E-Mail] 2002/06/24(月) 15:04:26
URLにASCII(の一部の文字)以外って含めることができましたっけ。

エスケープしないといけないのでは?

tty 2002/06/24(月) 17:22:35
イントラネット環境で使用する、グループウェア(のような物)を作ってまして…

実際URLで2バイト文字を使用することは殆ど無いのですが、
ファイルサーバにあるファイルにハイパーリンクを張るときなどに困っております。

YuO [E-Mail] 2002/06/24(月) 17:49:21
とりあえず,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\")です。

tty 2002/06/28(金) 10:33:19
YuOさんお付き合いくださってありがとうございます。
VC初心者なので、エスケープというのがわかりませんが、ちょっと調べてみます。

ありがとうございました。

tty 2002/06/28(金) 10:33:53
[[解決]]
解決済みにするの忘れてました

古いスレッドには追加発言できません。