Microsoft_Layer_for_Unicodeとは? わかりやすく解説

Microsoft Layer for Unicode

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/12/23 05:17 UTC 版)

ナビゲーションに移動 検索に移動

Microsoft Layer for Unicode (MSLU)は、Windows 9x系 (95/98/Me)でUnicode対応のアプリケーションソフトウェアを実行するためのマイクロソフト製のライブラリである。UnicoWS (Unicode for Windows 95/98/Me Systems)やUNICOWS.DLLなどといった名称でも知られている。

マイクロソフトは、MSLUのことを「Windows 95/98/ME上のWin32 APIのレイヤーであり、Unicodeを用いたプログラムだけを書いても全てのプラットフォーム上で動作させることができる」と記述している。[1] MSLUが登場する前は9x系のWindowsに対応しつつ、Unicode対応にもするには、Unicodeを使ったものとそうでないもの(Windows 9x用)の2つをビルドする必要があった。

MSLUは2001年3月に発表され、同年7月の版のMicrosoft Platform SDKから収録され利用可能となったが、この頃は既にWindows 9x系の絶頂期を過ぎた後であった。

動作

Windows APIでは、普通AANSI: ANSIコードページに基づくマルチバイト文字)版とWワイド文字)版の2つの関数が用意されている。Windows 9x系では、A版のみが実装され、W版を呼び出そうとすると、極一部を除いて実装されていない旨のエラーになる。一方Windows NT系では、A版とW版の両方が実装されている(ただし内部で直接実装されているのはW版であり、A版はW版の呼び出しへ変換するサンクとなっている)。

リンクの際、KERNEL32.LIBやADVAPI32.LIBなどWindows APIのライブラリよりも先にUNICOWS.LIBを指定すると、リンカはUNICOWS.LIBからシンボルを解決するようになる。

そして実行時、最初にワイド文字版の関数が呼ばれたとき、UNICOWS.LIB内へ実行が移る。このとき9x系のWindowsで実行していれば、UNICOWS.DLLを読み込みDLL内のサンクスタブへ実行を移す。このサンクスタブはワイド文字引数をANSI文字列へ変換してネイティブなA版APIを呼び出す役割を果たす。逆にW版APIを持つNT系のWindows上で実行していた場合、メモリ上に存在するインポートテーブルを書き換え、以後余分な負荷をかけずにW版の関数を呼び出せるようにする。

このようにするわけは、MSLUをリンクしたアプリケーションソフトウェアが、9x系のWindowsで実行したときのみUNICOWS.DLLを必要となるようにするためである。また、NT系で実行したときに、余分な手間がかかる機会を最初の1回の関数呼出のときだけに留める効果もある。

外部リンク

断りの無いものは全て英語である。

日本語

英語

オープンソースの代替品

  • libunicows — UNICOWS.LIBの代替のみ。MIT Licenseでライセンスされている。実行時にマイクロソフトのUNICOWS.DLLか次のOPENCOW.DLLが必要。
  • Opencow: Open Layer for Unicode — DLLとLIBの実装。旧名MZLU。MPL 1.1/GPL 2.0/LGPL 2.1でライセンスされている。元々はMozillaプロジェクトの一環としてであった。

「Microsoft Layer for Unicode」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。



固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「Microsoft_Layer_for_Unicode」の関連用語

Microsoft_Layer_for_Unicodeのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



Microsoft_Layer_for_Unicodeのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのMicrosoft Layer for Unicode (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2025 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2025 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2025 GRAS Group, Inc.RSS