idn wrapper - Windows �ɂ�����N���C�A���g���ł� IDN �ϊ��\�t�g�E�F�A
Copyright (c) 2000,2001,2002 Japan Network Information Center.
All rights reserved.
*** ���� **********************************************************
���������ł� mDN Wrapper (idn wrapper �̑O�g) ���C���X�g�[�������
����}�V���� idn wrapper ���C���X�g�[������ꍇ�ɂ́A�C���X�g�[���O
�ɁA���b�v����Ă��邷�ׂẴv���O�������A�����b�v���Ă��������B
*******************************************************************
1. �͂��߂�
Windows �ō��ۉ��h���C������������悤�ɂ��邽�߂ɂ́AWindows ���
�N���C�A���g�A�v���P�[�V�����ɂ����āA�������悤�Ƃ��閼�O�̃G���R�[
�f�B���O���ADNS �T�[�o����t����`���̂��̂ɕϊ�����K�v������܂��B
����́AWindows ��̃A�v���P�[�V�������A������ƍ��ۉ��h���C������
������悤�ɂȂ��Ă��Ȃ���΂Ȃ�Ȃ��A�Ƃ������Ƃł���A�{���͂���
����̃v���O�����̍쐬�҂��s�Ȃ��ׂ����Ƃł��B
���� IETF �ɂč��ۉ��h���C�����̃t���[�����[�N��W��������w�͂���
�����Ă���A���̌��ʂƂ��Ĉ�A�� RFC �������������s����邱�Ƃ�
�Ȃ��Ă��܂����A����ł����ۉ��h���C�����ɑΉ������A�v���P�[�V����
�͂܂��܂����Ȃ��̂�����ł��B
�����ŁA��̃A�v���P�[�V���������ۉ��h���C�����ɑΉ������邽�߂�
�w���p�[�A�v���P�[�V�������K�v�ɂȂ�܂��Bidnkit �Ɋ܂܂�� runidn
�R�}���h�� Unix �n�� OS �ł̈�‚̉�����ł����AWindows �ɑ΂����
����Ƃ��Ă͂����Ő������� idn wrapper ������܂��B
Windows �ɂ����āA�����̏ꍇ�A�h���C���������̗v����WINSOCK DLL ��
�n����܂��B�����ŁAWINSOCK DLL �����ۉ��h���C�����Ή��̂��̂ɒu��
�����Ă��΁A��̃v���O��������ł����ۉ��h���C�������g�����Ƃ�
�ł���悤�ɂȂ�܂��B
2. ������@
2.1. ���b�p�[DLL
���b�p�[DLL �́A�A�v���P�[�V�����ƌ���DLL �Ƃ̊ԂɊ��荞��ŁA�A�v��
�P�[�V���������DLL �̌Ăяo��������肵�āA�{����DLL �Ƃ͈قȂ�����
������������̂ł��B
+------------+ Call +------------+ Call +------------+
| |------->| |------->| |
|Application | |Wrapper DLL | |Original DLL|
| |<-------| |<-------| |
+------------+ Return +------------+ Return +------------+
additional
processing
here
�A�v���P�[�V���������DLL �̌Ăяo���̓��b�p�[ DLL�ɓn����܂��B���b
�p�[ DLL�͂����ŁA�t���I�ȏ������s�Ȃ��āA����DLL �̃G���g�����Ăяo
���܂��B�܂��A����DLL �̏������ʂ͈�U���b�p�[ DLL�ɕԂ���A�����ł�
�t���I�ȏ������s�Ȃ��āA�ŏI�I�Ȍ��ʂ��A�v���P�[�V�����ɕԂ���邱��
�ɂȂ�܂��B
idn wrapper �ł́AWINSOCK DLL��
WSOCK32.DLL WINSOCK V1.1
WS2_32.DLL WINSOCK V2.0
�ɑ΂��郉�b�p�[DLL ��񋟂��āA���ۉ��h���C�����̖��O�������ł����
���ɂ��܂��B16�r�b�g�ł�WINSOCK (WINSOCK.DLL) �͑ΏۊO�ł��B
2.2. �����Ώۂ�API
idn wrapper ��WINSOCK �̖��O�����Ɋ֘A����API �ɂ‚��Ă̂ݕt���I�ȏ�
�����s�Ȃ��܂��B�����̑ΏۂƂȂ�WINSOCK API�͈ȉ��̂��̂ł��B
WINSOCK 1.1, WINSOCK 2.0 �̗���ɂ������
gethostbyaddr
gethostbyname
WSAAsyncGetHostByAddr
WSAAsyncGetHostByName
WINSOCK 2.0 �����ɂ������
WSALookupServiceBeginA
WSALookupServiceNextA
WSALookupServiceEnd
�A�v���P�[�V�����ɂ���ẮA������API ���g��Ȃ��œƎ��Ƀh���C����
�̉������s�Ȃ����̂�����܂��B�Ⴆ�΁Anslookup�́A������API ���g��
�Ȃ��ŁA�����œƎ���DNS ���N�G�X�g�̐����A���߂��s�Ȃ��Ă��܂��B���R
�̂��ƂȂ���A�����̃A�v���P�[�V�����ɂ‚��ẮAidn wrapper �ł͑�
���ꉻ�Ή������邱�Ƃ͂ł��܂���B
���FWINSOCK 2.0 �ɂ́AWIDE CHARACTER �x�[�X�̖��O������API �Ƃ���
WSALookupServiceBeginW
WSALookupServiceNextW
������܂����A�����ɂ‚��Ă̓��b�v���܂���B������API �̓}
�C�N���\�t�g�d�l�ɂ�鍑�ۉ��ɑΉ��������̂ł�����A���̃t���[
�����[�N��Ŏg���ׂ����̂ł��B�����ɂ‚��Ă͑��̑����ꉻ�t���[
�����[�N�ɕϊ����Ă��܂��̂͊댯�ł͂Ȃ��Ɣ��f���܂����B
2.3. �����ΏۊO��API
��L�ȊO��WINSOCK API �ɂ‚��ẮAidn wrapper �͂Ȃɂ����Ȃ��ŁA����
WINSOCK API ���Ăяo���܂��B
idn wrapper �ł́A����WINSOCK DLL �𖼑O��ς��ăR�s�[���A�����
�Ăяo���悤�ɍ���Ă��܂��B
wsock32.dll -> wsock32o.dll
ws2_32.dll -> ws2_32o.dll
���b�p�[DLL �͌���WINSOCK DLL �Ɠ������O�ō쐬����܂��B�]����idn
wrapper ���C���X�g�[�����ꂽ��Ԃł́A
wsock32.dll idn wrapper for WINSOCK V1.1
ws2_32.dll idn wrapper for WINSOCK V2.0
wsock32o.dll Original WINSOCK V1.1 DLL
ws2_32o.dll Original WINSOCK V2.0 DLL
�ƂȂ�܂��B
2.4. �񓯊� API
�h���C�����̕ϊ��́A�ȉ��̃^�C�~���O�ōs�Ȃ���K�v������܂��B
DNS �ւ̃��N�G�X�g��
���[�J���G���R�[�f�B���O -> DNS �G���R�[�f�B���O
DNS ����̉�����M��
DNS �G���R�[�f�B���O -> ���[�J���G���R�[�f�B���O
����API �ɂ����ẮA���[�J���G���R�[�f�B���O����DNS �G���R�[�f�B���O
�ւ̕ϊ��́A����API ���Ăяo���O�ɍs���ADNS �G���R�[�f�B���O���烍�[
�J���G���R�[�f�B���O�ւ̕ϊ��́A����API ���畜�A���Ă����Ƃ���ōs��
���܂��B
�������AWINSOCK �̈ȉ���API �͔񓯊�API �ŁADNS ����̉�����M�O�ɕ�
�A���Ă��܂��܂��B
WSAAsyncGetHostByAddr
WSAAsyncGetHostByName
������API �ɂ����ẮA���O�����̊����́AWindows �ւ̃��b�Z�[�W�ɂ��
�Ēʒm����܂��B���̂��߁ADNS �G���R�[�f�B���O���烍�[�J���G���R�[�f�B��
�O�ւ̕ϊ����s�Ȃ��ɂ́A���b�p�[�͒ʒm��̃E�B���h�E�v���V�W���̃��b
�Z�[�W�L���[���t�b�N���āA���̊������b�Z�[�W��ߊl����K�v������܂��B
�����ŁA�񓯊�API ���Ăяo���ꂽ�ꍇ�ɂ́Aidn wrapper �́A�ʒm��̃E�B��
�h�E�v���V�W���i�����API �̃p�����^�Ŏw������܂��j�Ƀt�b�N��ݒ肵
�܂��B�t�b�N���������b�Z�[�W�i�����API �̃p�����^�Ŏw������܂��j��
���o�����Ȃ�A�t�b�N�͌��ʂ̊i�[�̈�i�����API �̃p�����^�Ŏw������
�Ă��܂��j�̃h���C�������ADNS ���̃G���R�[�f�B���O���烍�[�J���G���R�[
�f�B���O�ɕϊ�������̂Ƃ��܂��B
2.5. Wrapper DLL �̃C���X�g�[��
WINSOCK DLL ��Windows �̃V�X�e���f�B���N�g���ɒu����Ă��܂��B
WINSOCK ���m���Ƀ��b�v����ɂ́A�V�X�e���f�B���N�g���ɂ�����
�I���W�i��WINSOCK DLL �̖��O�̕ύX
ren wsock32.dll wsock32o.dll
ren ws2_32.dll ws2_32o.dll
���b�p�[DLL �̓���
copy somewhere\wsock32.dll wsock32.dll
copy somewhere\ws2_32.dll ws2_32.dll
copy another DLLs also
���s�Ȃ��K�v������܂��B
�������A�V�X�e���f�B���N�g���ł��̂悤��DLL �̒u���������s�Ȃ��̂͑�
�ϊ댯�ȑ���ɂȂ�܂��B
a) DLL ����ւ�����ԂŁA���������Ǔ���������s�Ȃ��ƁA�I���W�i��
��WINSOCK DLL �������Ă��܂����ƂɂȂ�܂��B
b) �T�[�r�X�p�b�N��A�v���P�[�V�����ȂǂŁAWINSOCK DLL ���ē����
���̂�����܂����A����ɂ���Ă�WINSOCK �����p�s�\�ɂȂ邱�Ƃ���
��܂��B
���̂悤�ȏ�ԂɂȂ�ƁA�l�b�g���[�N�@�\���S���g���Ȃ��Ȃ�����A�ň�
��Windows �̋N������o���Ȃ��Ȃ�”\��������܂��B
�����ŁAidn wrapper �ł́A��̂悤�ȃV�X�e�����x���̃��b�v�ł͂Ȃ��A
�A�v���P�[�V�����ɑ΂��郉�b�v����{�@�\�Ƃ��Ē񋟂�����̂Ƃ��܂��B
Windows �ɂ����āADLL �́A��{�I�ɂ�
�A�v���P�[�V�����̃��[�h�f�B���N�g��
%SystemRoot%\System32
%SystemRoot%
PATH �Ŏw�������f�B���N�g��
�̏����Ō�������āA�ŏ��Ɍ��‚��������̂����[�h����܂��B�ł�����A
��ʓI�ɂ́ADLL ���A�v���P�[�V�����̃��[�h�f�B���N�g���ɃC���X�g�[��
����΁A���̃A�v���P�[�V���������WINSOCK �̌Ăяo�������b�v���邱��
���ł��܂��B
�������A�����‚��̃A�v���P�[�V�����ADLL �ł́A�����p�X���o�R�����ɓ�
���DLL �������N����悤�ɂȂ��Ă�����̂�����܂��B���̂悤�ȍ\����
�A�v���P�[�V�����ADLL ���g��ꂽ�ꍇ�ɂ� idn wrapper�ł͑Ώ����邱��
�͂ł��܂���B
���FNetscape�͓���DLL �Ƀo�C���h����Ă���悤�ŁA�A�v���P�[�V�����f�B
���N�g���ւ̃C���X�g�[���ł̓��b�v�ł��܂���BWINSOCK DLL ���̂�
�V�X�e���f�B���N�g���̊֘ADLL �Ƀo�C���h����Ă���悤�ł��B���A
Internet Explore��Windows Media Player�͕W���̃T�[�`�p�X�ɏ]����
����̂ŁA���b�v���邱�Ƃ��ł��܂��B
2.6. �G���R�[�f�B���O�̕ϊ��ʒu
WINSOCK 2.0 ���T�|�[�g���Ă���Windows �ɂ́AWINSOCK ��1.1 ��2.0 �̂�
�ꂼ��ɑΉ�����DLL ������AWINSOCK 1.1 ��API �̌Ăяo����2.0 �̓���
�G���g���Ƀ��_�C���N�g�����悤�ɂȂ��Ă��܂��B
+------------+ Call +------------+ Call +------------+
| |------->| |------->| |
|Application | |WINSOCK 1.1 | |WINSOCK 2.0 |
| |<-------| |<-------| |
+------------+ Return +------------+ Return +------------+
���̏ꍇ�ɂ�1.1 �ɑ΂���Ăяo����2.0 �ɑ΂���Ăяo�����A�Ƃ���V2.0
�p��DLL �ɓn�����̂ŁA2.0�p�̃��b�p�[DLL �������ŃG���R�[�f�B���O��
�ϊ����s�Ȃ��悤�ɂ���ׂ��ł��傤�B
���AWINSOCK 1.1 �����T�|�[�g���Ă��Ȃ��ꍇ(Win95)�ɂ́A1.1 �ɑΉ���
��DLL ��������܂���B
+------------+ Call +------------+
| |------->| |
|Application | |WINSOCK 1.1 |
| |<-------| |
+------------+ Return +------------+
���̏ꍇ�ɂ͕K�R�I��1.1 �p�̃��b�p�[DLL �ŃG���R�[�f�B���O��ϊ�����
����΂Ȃ�܂���B
idn Wrapepr ��windows �̃V�X�e���f�B���N�g���ɃC���X�g�[�����ꂽ�ꍇ
�ɂ́A��̒ʂ�ɓ��삷��̂ŁA
WINSOCK 2.0 ���� 2.0 ���b�p�[�ŕϊ�
WINSOCK 1.1 �̂� 1.1 ���b�p�[�ŕϊ�
����K�v������܂��B
�������A�A�v���P�[�V�����f�B���N�g���ɃC���X�g�[�����ꂽ�ꍇ�ɂ͓���
���ς���Ă��܂��BWindows �t���� WINSOCK 1.1 DLL�́A�V�X�e���f�B���N
�g����WINSOCK 2.0 �Ƀo�C���h����Ă��邽�߁A�A�v���P�[�V�����f�B���N
�g������WINSOCK 2.0 ���b�p�[DLL �ɂ̓��_�C���N�g����Ă��܂���B����
���߁A�A�v���P�[�V�����f�B���N�g���ւ̃C���X�g�[���ɂ����ẮA1.1DLL�A
2.0DLL�̗���ŃG���R�[�f�B���O��ϊ�����K�v������܂��B
���̂悤��DLL �Ԃ̃o�C���f�B���O�̓h�L�������g����Ă��܂���̂ŁA��
���A�o�[�W�����ɂ���Ă͈قȂ�����������邩���m��܂���B������idn
wrapper �ł́A���W�X�g���l�ɂ���āA���b�p�[DLL �̂ǂ��ŕϊ����s�Ȃ�
�������肷��悤�ɂ��āA�C���X�g�[����ɂ�鍷�فA���邢�̓o�[�W����
�ɂ�鍷�ق��z���悤�ɂ��܂��B
idn wrapper �p�̃��W�X�g���ݒ��
HKEY_LOCAL_MACHINE\SOFTWARE\JPNIC\IDN
HKEY_CURRENT_USER\SOFTWARE\JPNIC\IDN
�ȉ��ɔz�u����܂��B�G���R�[�f�B���O�ϊ����s�Ȃ��ʒu�ɂ‚��ẮA����
�����̃��W�X�g���l Where�iREG_DWORD�j �ɂ���Č��肵�܂��B�L��Ȓl�́A
���W�X�g�� Where (REG_DWORD)
0 WINSOCK 1.1�AWINSOCK 2.0 �̗���ŕϊ�����
1 WINSOCK 2.0 ������΁AWINSOCK 2.0�����ŕϊ�����
WINSOCK 1.1 �����̏ꍇ�ɂ� WINSOCK 1.1 �ŕϊ�����
2 WINSOCK 1.1 �����ŕϊ�����
3 WINSOCK 2.0 �����ŕϊ�����
�̂S�ʂ�ł��B�A�v���P�[�V�����f�B���N�g���ɃC���X�g�[������ꍇ�ɂ�
�u�O�v���A�V�X�e���f�B���N�g���ɃC���X�g�[������ꍇ�ɂ́u�P�v��ݒ�
����K�v������܂��B���W�X�g���l�����݂��Ȃ��ꍇ�ɂ́u�O�v��z�肵��
���B����̓A�v���P�[�V�����f�B���N�g���ւ̃C���X�g�[����W���Ƃ�����
�̂ł��B
2.7. �ϊ���/��̃G���N�R�[�f�B���O
���b�p�[DLL �ł́A�������悤�Ƃ���h���C�������A�}�V���̃��[�J���G��
�R�[�f�B���O����DNS �T�[�o�̃G���R�[�f�B���O�ɕϊ����A�܂��ADNS ����
���Ă����h���C����(DNS �T�[�o�̃G���R�[�f�B���O)���}�V���̃��[�J���G��
�R�[�f�B���O�ɖ߂��܂��B
���݁ADNS ���̍��ۉ��G���R�[�f�B���O�ɂ‚��ẮA�����‚��̕���
�Ă���Ă��܂��B���b�p�[DLL �͂�����DNS ���G���R�[�f�B���O�̂ǂꂩ
�ЂƂ‚ɕϊ�����悤�ɍ\������܂��B����DNS ���G���R�[�f�B���O�̓��W
�X�g���Ŏw������܂��B���̃��W�X�g���ɂ́Aidn wrapper �̃C���X�g�[��
���Ɂi�����_�ł͖���́j�f�t�H���g�G���R�[�f�B���O���ݒ肳��܂��B��
�R�A���̃��W�X�g���́A��ő��̂��̂ɕύX���邱�Ƃ��ł��܂��B
idn wrapper �p�̃��W�X�g���ݒ��
HKEY_LOCAL_MACHINE\SOFTWARE\JPNIC\IDN
HKEY_CURRENT_USER\SOFTWARE\JPNIC\IDN
�ȉ��ɔz�u����܂��BDNS ���̃G���R�[�f�B���O�̓��W�X�g���l Encoding
�iREG_SZ�j�Ŏw������܂��B���̃G���R�[�f�B���O���́Alibmdn�ŔF������
����̂łȂ���΂Ȃ�܂���B
���W�X�g�� Encoding (REG_SZ)
DNS �T�[�o���̃G���R�[�f�B���O����ݒ肵�܂�
���A�A�v���P�[�V�������g�p���Ă��郍�[�J���G���R�[�f�B���O�́A�ʏ�
�̓v���Z�X�̃R�[�h�y�[�W���狁�߂܂��B���b�p�[DLL ���g�p���� 'iconv'
���C�u�����́Awindows �̃R�[�h�y�[�W�����G���R�[�f�B���O���Ƃ��Ď�t
���邱�Ƃ��ł���̂ŁA�R�[�h�y�[�W�������̂܂܃��[�J���G���R�[�f�B��
�O���Ƃ��Ďg�p���܂��B
�������A�A�v���P�[�V�����ɂ���ẮA����̍��ۉ��G���R�[�f�B���O��
�h���C�������G���R�[�f�B���O���Ă��܂����̂�����܂��B�Ⴆ�΁AIE�ł�
�h���C������UTF-8 �ŕ\�L����悤�Ɏw�����邱�Ƃ��ł���悤�ɂȂ��Ă�
�܂��BUTF-8 �ɂ��G���R�[�f�B���O�́A��Ă���Ă��鍑�ۉ���̂�
�Ƃ‚ł����A���ۉ����ꂽDNS �T�[�o�͑��̃G���R�[�f�B���O������t��
�Ȃ������m��܂���B
���̂悤�ȏ󋵂ɑΏ����邽�߁Aidn ���b�p�[�́A���[�J���G���R�[�f�B��
�O�Ƃ��ăv���O�������L�̃G���R�[�f�B���O����t���邱�Ƃ��ł���悤��
���܂��B���̂悤�ȃv���O�������L�̃��[�J���G���R�[�f�B���O�̓��W�X�g
���L�ڂ������̂Ƃ��܂��B
idn wrapper �p�̃v���O�������L�̃��W�X�g���ݒ��
HKEY_LOCAL_MACHINE\SOFTWARE\JPNIC\IDN\PerProg
HKEY_CURRENT_USER\SOFTWARE\JPNIC\IDN\PerProg
�ȉ��ɁA�v���O�������i���s���W���[���t�@�C�����j���L�[�Ƃ��Ĕz�u����
�܂��B�Ⴆ�΁AInternet Explore �̏ꍇ�ɂ́A���s���W���[������
IEXPLORE���L�[�Ƃ���
HKEY_LOCAL_MACHINE\SOFTWARE\JPNIC\IDN\PerProg\IEXPLORE
�ȉ��ɒu����܂��B���[�J���G���R�[�f�B���O���́A���W�X�g���l
Encoding �iREG_SZ�j�Ŏw�����܂��B�����libmdn�ŔF���������̂łȂ���
�΂Ȃ�܂���B
���W�X�g�� Encoding (REG_SZ)
�A�v���P�[�V�����v���O�������L�̃G���R�[�f�B���O���i�f�t�H��
�g�̃G���R�[�f�B���O�ȊO��K�v�Ƃ���ꍇ�j���w�肵�܂��B
3.�Z�b�g�A�b�v�ƃR���t�B�M�����[�V����
idn wrapper �́A��{�C���X�g���[�V�����Ƃ��āA�A�v���P�[�V�����f�B��
�N�g����WINSOCK �����b�v���܂��B����ɍ��킹�āA�Z�b�g�A�b�v�v���O��
���ƃR���t�B�M�����[�V�����v���O�����Ƃ�񋟂��܂��B
���F�V�X�e���f�B���N�g���ł̃��b�v���”\�ł����A����͊댯�Ȑݒ�ł�
�̂ŁA�W���C���X�g���[�V�����Ƃ��Ă͒񋟂��܂���B�V�X�e���f�B��
�N�g���ւ̃C���X�g�[�����s�Ȃ��ꍇ�ɂ́A���ȐӔC�ł���Ă��������B
3.1.�Z�b�g�A�b�v�v���O����
idn wrapper ���C���X�g�[������ɂ�"setup.exe" �����s���܂��B�Z�b�g�A�b
�v�v���O�����͈ȉ��̏��������s���܂��B
�t�@�C���̃C���X�g�[��
�f�B���N�g���u\Program Files\JPNIC\idn wrapper�v �i �Z�b�g�A�b�v
���_�ŕύX�”\�j�ȉ��ɁAidn wrapper ���\������t�@�C�����R�s�[��
�܂��B
���W�X�g���̐ݒ�
HKEY_LOCAL_MACHINE\Software\JPNIC\IDN �ȉ��ɕK�v�ȃ��W�X�g���L�[�A
���W�X�g���l���쐬�A�ݒ肵�܂��B
InstallDir REG_SZ "<�C���X�g�[���f�B���N�g��>"
idn wrapper �̃C���X�g�[���f�B���N�g���̃p�X���ł��B�Z�b�g
�A�b�v�v���O�����͂��̃f�B���N�g���ɃI���W�i����WINSOCK
DLL �̃R�s�[���쐬���܂��Bidn wrapper �̃��b�p�[ DLL �͎�
�s���ɂ��� DLL ���Q�Ƃ��܂��B
ConfFile REG_SZ "<�C���X�g�[���f�B���N�g��>\idn.conf"
idn wrapper �����ۉ��h���C�����̕ϊ������Ɏg�p���Ă���
idnkit �̃R���t�B�M�����[�V�����t�@�C���̖��O�ł��B���̃t�@
�C���͍��ۉ��h���C�����̏����ɕK�v�Ȋe��̃p�����[�^��ݒ�
���邽�߂̂��̂ł��B�ڂ����̓t�@�C���̓��e���������������B
���̒l�͌�q����R���t�B�M�����[�V�����v���O�����ŕύX����
���Ƃ��ł��܂��B
LogFile REG_SZ "<�C���X�g�[���f�B���N�g��>\idn_wrapper.log"
idn wrapper �̃��O�t�@�C���̖��O�ł��B���̒l���R���t�B�M��
���[�V�����v���O�����ŕύX���邱�Ƃ��ł��܂��B
LogLevel DWORD -1
���O���x���̎w��ł��B�f�t�H���g�� -1 �ŁA����͑S�����O��
�o�͂��Ȃ��Ƃ����Ӗ��ł��B���̒l���R���t�B�M�����[�V�����v
���O�����ŕύX���邱�Ƃ��ł��܂��B
PerProg �L�[
�v���O�������̐ݒ�l���i�[���邽�߂̃L�[�ł��B���̉��ɁA�v��
�O�����̎��s���W���[�������L�[�Ƃ��ăv���O�����•ʂ̐ݒ肪�L
�^����܂��B�ݒ肳�����͈ȉ��̓�‚ł��B
PerProg\<progname>\Where REG_DWORD �ϊ��ʒu
PerProg\<progname>\Encoding REG_SZ �G���R�[�f�B���O��
�G���R�[�f�B���O���͒ʏ�R���t�B�M�����[�V�����v���O�����ɂ��
�Đݒ肳��܂��B�ϊ��ʒu�́A�W���C���X�g�[���ł͕s�v�ł��B�V
�X�e���f�B���N�g���ւ̃C���X�g�[�����s�Ȃ����ꍇ�ɂ́A���W�X
�g���G�f�B�^�Ŋ‹��ɍ��킹�Đݒ肷��K�v������܂��B
�A�C�R���̍쐬
�R���t�B�M�����[�V�����v���O�����̃A�C�R�����쐬���A�X�^�[�g���j���[
�ɓo�^���܂��B����ɂ���ăR���t�B�M�����[�V�����v���O�������N��
���邱�Ƃ��ł��܂��B
�A���C���X�g�[������ɂ́A�R���g���[���p�l���́u�A�v���P�[�V�����̒�
���ƍ폜�v�ŁA�uidn wrapper�v ��I�����č폜�i�u�lj��ƍ폜�v�{�^���j
���܂��B
3.2.�R���t�B�M�����[�V�����v���O����
�R���t�B�M�����[�V�����v���O�����́A�A�v���P�[�V��������肵�ă��b�v
������A�A�v���P�[�V�����̃��b�v���������邽�߂̃c�[���ł��B
�N������ƈȉ��̂悤�ȉ�ʂ��\������܂��B
����������������������������������������������������������������������
���@��idn wrapper - Configuration ���Q�������~��
����������������������������������������������������������������������
�� idn wrapper Configuration Program version X.X ��
����������������������������������������������������������������������
�� Wrapped Program ����������������
�������������������������������������������������������� Wrap.. ����
���� ���Ȅ�����������������
���� ����������������������
���� �� ���� Unwrap.. ����
���� �� ������������������
���� �� ������������������
���� �� ����UnwrapAll.����
���� �� ������������������
���� �� ������������������
���� �� ����RewrapAll.����
���� �� ������������������
���� �� ������������������
���� �� ���� Log.. ����
���� �� ������������������
���� �� ������������������
���� ��������Advanced..����
���� ���Ʉ�����������������
����������������������������������������������������������������������
�����q�� ���r�� �� Exit ����
�������������������������������������������������� ����������������
����������������������������������������������������������������������
���X�g�{�b�N�X�ɂ́A���̎��_�Ń��b�v����Ă���v���O�������\�������
���B�ŏ��Ɏ��s�����ꍇ�ɂ͋�ɂȂ��Ă��܂��B
�v���O���������b�v����ɂ́A"wrap"�{�^���������܂��B"wrap"�{�^������
���ƈȉ��̂悤�ȃ_�C�A���O���\������܂��B
��������������������������������������������������������������������
���@��idn wrapper - Wrap Executable ���Q�������~��
��������������������������������������������������������������������
�� ��������������������������������������������������������
�� Program: �� ����Browse..����
�� ��������������������������������������������������������
�� ���������� ��
��Encoding: �� �� ��Default ��UTF-8 ��
�� ���������� ��
�� �� Force local DLL reference ��
��������������������������������������������������������������������
�� ��������������������������
�� �� wrap ���� cancel ����
�� ��������������������������
��������������������������������������������������������������������
�ŏ��ɁA���b�v����v���O�����̎��s�t�@�C������ݒ肵�܂��B���ړ��
���邩�A�u���E�Y�{�^���Ńt�@�C����T���Ă��������B���ɂ��̃v���O��
���̃��[�J���G���R�[�f�B���O���w�肵�܂��B�ʏ�́uDefault�v �ł���
���܂���B�v���O���������ۉ��G���R�[�f�B���O�ɏ]���Ă���ꍇ�ɂ̂�
�uUTF-8�v ���w�����܂��B
�uForce local DLL reference�v�{�^���ɂ��A���b�v����v���O������
DLL �̒T��������ύX���邱�Ƃ��ł��܂� (������ Windows95 �ɂ͂���
�@�\���Ȃ����߁A���̃{�^�����\������܂���)�B���̃{�^�����`�F�b�N
����ƁA���Ƃ��v���O�������ʂ̏ꏊ�� DLL ���w�肵�Ă��Ă��A��Ɏ�
�s�t�@�C��������f�B���N�g���� DLL ���D�悳���悤�ɂȂ�܂��B��
���v���O���������܂����b�v�ł��Ȃ��ꍇ�ɂ́A���̃{�^�����`�F�b�N��
��Ƃ��܂�������������܂���B�����������ɑ��̖�肪��������”\��
������܂��B
�Ō�Ɂuwrap�v�{�^���������΁A�v���O�������A�w�肳�ꂽ�G���R�[�f�B
���O�Ń��b�v����܂��B���b�v���ꂽ�v���O�����́A�ŏ��̃E�B���h�E��
���X�g�{�b�N�X�ɔ��f����܂��B
idn wrapper ���o�[�W�����A�b�v�����ꍇ�ɂ́A���b�v�p�� DLL ���A�b�v
�f�[�g���邽�߂ɁA�v���O�������ă��b�v����K�v������܂��B���̂��߂ɁA
���݃��b�v����Ă���v���O�����ɑ΂��čēx���b�v���s�����߂́urewrap
all�v�{�^�����p�ӂ���Ă��܂��B
�v���O�����ɑ΂��郉�b�v����������ɂ́A���X�g�{�b�N�X�ʼn�������v��
�O������I�����āA�uunwrap�v�{�^���������܂��B�ȉ��̊m�F�p�̃_�C�A��
�O���\������܂��̂ŁA�ԈႢ���Ȃ���΁uunwrap�v�{�^���������Ă�����
���B
��������������������������������������������������������������������
���@��idn wrapper - Unwrap Executable ���Q�������~��
��������������������������������������������������������������������
�� ��������������������������������������������������������
��Program: �� ����
�� ��������������������������������������������������������
��������������������������������������������������������������������
�� ��������������������������
�� �� Unwrap ���� Cancel ����
�� ��������������������������
��������������������������������������������������������������������
���b�v�����������ƁA���̃v���O�����͍ŏ��̃E�B���h�E�̃��X�g�{�b�N
�X������폜����܂��B
�v���O�����ɑ΂��Č��ݐݒ肳��Ă��郉�b�v�����ׂĉ������邽�߂�
�uunwrap all�v�{�^�����p�ӂ���Ă��܂��B
���O�̐ݒ���s���ɂ́A"log" �{�^���������܂��B���̂悤�ȃ_�C�A���O��
�\������܂��B
��������������������������������������������������������������������
���@��idn wrapper - Log Configuration ���Q�������~��
��������������������������������������������������������������������
�� Log Level: ��None ��Fatal ��Error ��Warning ��Info ��Trace ��
�� ����������������������������������������������������
�� Log File:�� ����Browse..����
�� ����������������������������������������������������
�� ���������� ���������� ��
��Log Operation:�� View �� ��Delete�� ��
�� ���������� ���������� ��
��������������������������������������������������������������������
�� ��������������������������
�� �� OK ���� Cancel ����
�� ��������������������������
��������������������������������������������������������������������
���O���x���͎��̒�����I�����邱�Ƃ��ł��܂��B
None ���O���o�͂��Ȃ�
Fatal �v���I�G���[�̂݋L�^����
Error �v���I�łȂ��G���[���L�^����
Warning �x�����b�Z�[�W���L�^����
Info ���̑��̏����L�^����
Trace �g���[�X�o�͂��L�^����
�����ɂ��������O���x���̐ݒ�́AIDN ���C�u���� (idnkit.dll) ���o�͂���
���O�ɑ΂��Ă̂ݗL��ł��Bidn wrapper ���g���o�͂��郍�O�� ON/OFF
�����ł��܂���BNone ���w�肷��� OFF �ɁA����ȊO�̃��x�����w�肷���
ON �ɂȂ�܂��B
���̃_�C�A���O��p���āA���O�t�@�C���̃p�X�����w�肷�邱�Ƃ��ł��܂��B
�܂��A���O�t�@�C���̓��e��\����������A���O�t�@�C�����폜���邱�Ƃ�
�”\�ł��B
���O���x���⃍�O�t�@�C���̐ݒ�́A�ݒ莞�ɂ��łɓ��삵�Ă���v���Z�X
�ɂ͉e����^���Ȃ����ƂɋC���‚��Ă��������B
"advanced" �{�^���������Ɓuadvanced configuration�v�p�̃_�C�A���O
���\������܂��B���̃_�C�A���O�͏㋉���[�U�̂��߂̂��̂ŁA�K�؂ȃf
�t�H���g���ݒ肳��Ă��邽�߂ɒʏ탆�[�U���ύX����K�v�̂Ȃ��悤��
��{�I�ȃp�����[�^��ύX���邱�Ƃ��ł��܂��B
��������������������������������������������������������������������
���@��idn wrapper - Advanced Configuration ���Q�������~��
��������������������������������������������������������������������
�� IDN Wrapping Mode ��
�� ��Wrap both WINSOCK 1.1 and WINSOCK 2.0 ��
�� ��Wrap only WINSOCK 1.1 ��
�� ��Wrap only WINSOCK 2.0 ��
�� ��Wrap only WINSOCK 2.0 if it exists. ��
�� Otherwise wrap only WINSOCK 1.1 ��
��������������������������������������������������������������������
�� IDN Configuration ��
�� ����������������������������������������������������
�� Log File:�� ����Browse..����
�� ����������������������������������������������������
�� ���������� ��
�� �� Edit �� ��
�� ���������� ��
��������������������������������������������������������������������
�� ��������������������������
�� �� OK ���� Cancel ����
�� ��������������������������
��������������������������������������������������������������������
���̃_�C�A���O���g�p���āA����3��ނ̐ݒ���s�����Ƃ��ł��܂��B
Wrapping Mode
���b�v��@��ݒ肵�܂��B�ʏ�̓f�t�H���g�Őݒ肳��Ă��鍀�ڂ�
�I�����Ă����΂悢�͂��ł����A��肪�N�����Ƃ��ɂ͕ʂ̍��ڂɂ�
��Ɠ����悤�ɂȂ邩������܂���B
IDN Configuration
�R���t�B�M�����[�V�����t�@�C�������w�肵�܂��B�܂� "Edit" �{�^
�����������Ƃɂ��A�t�@�C���̓��e��ҏW���邱�Ƃ��”\�ł��B
4. ��������
4.1. DLL �o�[�W����
���b�p�[DLL �́A����WINSOCK ��DLL �̃o�[�W�����ɋ����ˑ����܂��B����
�́A����J�̃G���g�����܂߂Ă��ׂẴG���g����񋟂���K�v�����邽��
�ł��B���̂���WINSOCK DLL �̃o�[�W�������ς��ƁAidn wrapper ������
���Ȃ��Ȃ�”\��������܂��B
����쐬���ꂽidn wrapper �́A
Win2000 (WINSOCK 1.1 + 2.0)
WinME (WINSOCK 1.1 + 2.0)
�œ�����m�F���Ă��܂��B�����A�����ɂ킽���ē��삷��ۏ؂͂���܂���B
4.2. DNS, WINS, LMHOSTS
Windows �ł́ADNS �����ł͂Ȃ��AWINS��LMHOSTS �ɂ���Ă��h���C�����A
�z�X�g���̉������s�Ȃ��܂��Bidn wrapper ���g�����ꍇ�ɂ́A�h���C��
���̕ϊ����A�����̕�ւ̃f�B�X�p�b�`���s�Ȃ��ꏊ������ʑw�ōs
�Ȃ���̂ŁA�����̂��ׂĂ̕�ɂ‚��āA�h���C�����A�z�X�g���̕�
�����s�Ȃ��邱�ƂɂȂ�܂��B���̂��߁AWindows ���AWINS��LMHOSTS ��
�g���Ă���ꍇ�ɂ́A�\��Ȃ���肪��������”\��������܂��B�����
�‚��ẮAidn wrapper ���g���ꍇ�ɂ́A���O������DNS �������g�p���邱
�Ƃ������߂��܂��B
3.3. �h���C�����ȊO�̖��O�̉���
WINSOCK 2.0 �̖��O����API
WSALookupServiceBeginA
WSALookupServiceNextA
WSALookupServiceEnd
�́A�h���C�����ȊO�ł��g�p�ł���A�ėp�̖��O�����p��API �Ƃ��Ē�`��
��Ă��܂��B�����_�ł́A�����͂����ς�h���C�����̉����Ŏg�p�����
���܂����A���̖��O(�Ⴆ�΃T�[�r�X��)�̉����ɂ��g�p�ł��邱�ƂɂȂ���
���܂��B
idn wrapper �́A���O�̑Ώۂ̔@���ɂ�����炸�A���O�̃G���R�[�f�B���O
��ϊ����Ă��܂��̂ŁA������API ���A�h���C�����ȊO�̉����Ɏg����
����ꍇ�ɂ́A������N�����”\��������܂��B
4.4. ���O����API ���g��Ȃ��v���O����
�A�v���P�[�V�����ɂ���ẮA�h���C�����̉����ɂ�����API ���g�p����
�����̂�����܂��B�Ⴆ�΁A'nslookup'�́A������API ���g�p���Ȃ��ŁA
����DNS �T�[�o�ƒʐM���Ă��܂��܂��B���̂悤�ȃA�v���P�[�V�����ɂ‚�
�ẮAidn wrapper �͖��ɗ����܂���B
4.5. ����WINSOCK DLL �Ƀo�C���h���ꂽ�A�v���P�[�V����
�A�v���P�[�V�����ɂ���ẮA�W����DLL �T�[�`�p�X�ɏ]��Ȃ��ŁA�����
�p�X��DLL �Ƀo�C���h����Ă�����̂�����܂��B�悭�g����v���O����
�̒��ł́ANetscape Communicator �������Ȃ��Ă��܂��B���̂悤�ȃv���O
�����ɂ‚��ẮA�W���̃C���X�g�[���^�R���t�B�M�����[�V�����ł̓��b�v
���邱�Ƃ͂ł��܂���B
���̂悤�ȃv���O�����ɂ‚��āA�ǂ����Ă����b�v����K�v������Ȃ�A�V
�X�e���f�B���N�g���ւ̃C���X�g�[�����s�Ȃ����Ƃ��ł��܂��B�������A��
�̃C���X�g�[���͑�ϊ댯�ŁA�ꍇ�ɂ���Ă̓V�X�e�����ċN���s�\�ɂ���
���܂��”\��������܂��B
5. ���W�X�g���ݒ� - �܂Ƃ�
5.1. ���W�X�g���̗D�揇��
idn wrapper �̐ݒ���́AHKEY_LOCAL_MACHINE�AHKEY_CURRENT_USER��
Software\JPNIC\IDN
�ȉ��Ɋi�[����܂��Bidn wrapper�͍ŏ���HKEY_LOCAL_MACHINE�̐ݒ���
�ݍ��݁AHKEY_CURRENT_USER���ɂ��ݒ肪����΁A����ŏ㏑�����܂��B��
��́AHKEY_LOCAL_MACHINE ��������ݒ肵�܂��B���[�U�•ʂɈقȂ�����
����g�������ꍇ�̂݁AHKEY_CURRENT_USER��ݒ肷��悤�ɂ��Ă��������B
�Ȃ��A�R���t�B�M�����[�V�����v���O������ HKEY_LOCAL_MACHINE �̐ݒ�
������ǂݏ�������悤�ɂȂ��Ă��܂��B
4.2. ���W�X�g���L�[
�S�̂̋��ʂ̐ݒ�ƁA�v���O�����•ʐݒ�Ƃ�����܂��B
�Q���ʒ�`
Software\JPNIC\IDN\InstallDir �C���X�g�[���f�B���N�g��
Software\JPNIC\IDN\Where �ϊ��ʒu
0:WINSOCK1.1 WINSOCK2.0�̗����
1:WINSOCK2.0 ������΂������
2:WINSOCK1.1 ������
3:WINSOCK2.0 ������
Software\JPNIC\IDN\ConfFile idnkit �̐ݒ�t�@�C��
Software\JPNIC\IDN\LogLevel ���O���x��
Software\JPNIC\IDN\LogFile ���O�t�@�C��
�Q�v���O�����•ʐݒ�
�ϊ��ʒu�A����уv���O�������̃G���R�[�f�B���O�̓v���O�������ɓ��肷
�邱�Ƃ��ł��܂��B�����́A�ȉ��̃L�[�n�C�u�̉��ɁA�v���O���������L�[
�Ƃ���l�Őݒ肵�܂��B
Software\JPNIC\IDN\PerProg\<name>\Where
Software\JPNIC\IDN\PerProg\<name>\Encoding
�w�肳��Ă��Ȃ��ꍇ�ɂ́A
Where 0 1.1�A2.0 �̗���ŕϊ�
Encoding �v���Z�X�̃R�[�h�y�[�W
�Ƃ݂Ȃ��܂��B