フィンガープリンタ:ASCIIでスペースが登録されないバグ修正。その他、細かなバグ修正。

git-svn-id: file:///Users/lillianskinner/Downloads/platinum/twl/TwlToolsRED@262 7061adef-622a-194b-ae81-725974e89856
This commit is contained in:
nishikawa_takeshi 2009-04-17 10:12:23 +00:00
parent a5cbc2ae3b
commit e84908117b
12 changed files with 963 additions and 32 deletions

View File

@ -3,6 +3,8 @@ Microsoft Visual Studio Solution File, Format Version 10.00
# Visual Studio 2008
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "FingerPrinterTWL", "FingerPrinterTWL\FingerPrinterTWL.vcproj", "{F41F8415-6AF1-46DF-B771-30B5AE234B89}"
EndProject
Project("{54435603-DBB4-11D2-8724-00A0C9A8B90C}") = "FingerprintTWLSetup", "FingerprintTWLSetup\FingerprintTWLSetup.vdproj", "{9CA28C40-5A9C-4D11-AA9E-2441755D6219}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
@ -13,6 +15,8 @@ Global
{F41F8415-6AF1-46DF-B771-30B5AE234B89}.Debug|Win32.Build.0 = Debug|Win32
{F41F8415-6AF1-46DF-B771-30B5AE234B89}.Release|Win32.ActiveCfg = Release|Win32
{F41F8415-6AF1-46DF-B771-30B5AE234B89}.Release|Win32.Build.0 = Release|Win32
{9CA28C40-5A9C-4D11-AA9E-2441755D6219}.Debug|Win32.ActiveCfg = Debug
{9CA28C40-5A9C-4D11-AA9E-2441755D6219}.Release|Win32.ActiveCfg = Release
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE

View File

@ -11,7 +11,7 @@
<DebugSettings
Command="$(TargetPath)"
WorkingDirectory=""
CommandArguments="-a TEST &quot;C:\\test_program.nand.tad&quot; -t test.tad"
CommandArguments=""
Attach="false"
DebuggerType="3"
Remote="1"

View File

@ -27,7 +27,7 @@ void Form1::construct()
System::String ^example = "Input Example\r\n\r\n"
+ "(1)String of ASCII Charactors\r\n"
+ " *ABCD\r\n"
+ " => register \"41424344\" (\'T\' \'E\' \'S\' \'T\')\r\n\r\n"
+ " => register \"41424344\" (\'A\' \'B\' \'C\' \'D\')\r\n\r\n"
+ "(2)Hexadecimal Numbers\r\n"
+ " *5A6B78014A235A\r\n"
+ " *5a6b78014a235a\r\n"

View File

@ -11,13 +11,14 @@ void usage()
{
System::String ^msg =
"Usage:\n" +
"FingerprintTWL.exe input_rom output_rom [options]\n\n" +
"FingerprintTWL.exe input_rom output_rom fingerprint [options]\n\n" +
"options:\n" +
"-a ASCII_CHARACTORS: register ASCII charactors as fingerprint.\n" +
"-b HEX_NUMBERS: regsiter hexadicimal charactors as fingerprint.\n" +
"-s : output the ROM as SRL format.\n" +
"-a : register fingerprint as ASCII charactors.(Default)\n" +
"-b : regsiter fingerprint as hexadicimal binaries.\n" +
"-s : output the ROM as SRL format.(Default)\n" +
"-t : output the ROM as TAD format.\n" +
"-f : Force to overwrite the fingerprint to the already fingerprinted ROM.\n"
"-c : Fingerprint check mode. Typing \"output_rom\" and \"fingerprint\" is unnecessary.\n" +
"-g : GUI mode. Other options are ignored.\n" +
"-h : display this usage.\n";
System::Console::WriteLine( "{0}", msg );
@ -30,23 +31,21 @@ void fingerprintConsole( cli::array<System::String^> ^args )
{
System::String ^optarg;
char opt;
bool isAscii = false;
bool isAscii = true;
bool isTad = false;
bool isForce = false;
System::String ^fingerprint;
bool isCheck = false;
while( (opt = getopt(args, "a:b:stfgh", optarg)) >= 0 )
while( (opt = getopt(args, "abcstfgh", optarg)) >= 0 )
{
switch( opt )
{
case 'a':
isAscii = true;
fingerprint = System::String::Copy(optarg);
break;
case 'b':
isAscii = false;
fingerprint = System::String::Copy(optarg);
break;
case 't':
@ -65,6 +64,10 @@ void fingerprintConsole( cli::array<System::String^> ^args )
return;
break;
case 'c':
isCheck = true;
break;
case 'h':
usage();
return;
@ -76,15 +79,25 @@ void fingerprintConsole( cli::array<System::String^> ^args )
}
}
if( args->Length < 2 )
if( !isCheck && (args->Length < 3) )
{
throw gcnew System::Exception( "Arguments error." );
}
if( isCheck && (args->Length < 1) )
{
throw gcnew System::Exception( "Arguments error." );
}
// 入出力ファイルのパス
System::String ^srcpath = args[0];
System::String ^dstpath = args[1];
System::Console::WriteLine( "Input file: {0}", srcpath );
System::String ^dstpath;
System::String ^fingerprint;
if( !isCheck )
{
dstpath = args[1];
fingerprint = args[2];
}
System::Console::WriteLine( "Output file: {0}", dstpath );
System::Console::WriteLine();
@ -101,6 +114,7 @@ void fingerprintConsole( cli::array<System::String^> ^args )
}
srlbin = ReadBin(tmp);
System::IO::File::Delete(tmp); // 中間ファイルを削除する
System::Console::WriteLine();
}
else
{
@ -130,21 +144,30 @@ void fingerprintConsole( cli::array<System::String^> ^args )
}
System::Console::WriteLine( "*** Check the fingerprint ***" );
System::Console::WriteLine();
System::Console::WriteLine( "ASCII Charactors:" );
System::Console::WriteLine( "{0}", TransBytesToString(bytes) );
System::Console::WriteLine();
System::Console::WriteLine( "Hexadecimal Numbers:" );
System::Console::WriteLine( "{0}", TransBytesToHexString(bytes) );
System::Console::WriteLine();
System::Console::WriteLine( "The fingerprint has already been registered in the ROM." );
System::Console::WriteLine();
if( isCheck ) // チェックモードのときはここで終了
{
return;
}
if( !isForce )
{
System::Console::WriteLine( "Overwrite it? (y/n) > " );
System::Console::Write( "Overwrite it? (y/n) > " );
System::ConsoleKeyInfo ^key = System::Console::ReadKey();
System::Console::WriteLine();
if( (key->KeyChar == 'y') || (key->KeyChar == 'Y') )
{
System::Console::WriteLine( "Overwrite the fingerprint." );
System::Console::WriteLine();
}
else
{
@ -152,25 +175,39 @@ void fingerprintConsole( cli::array<System::String^> ^args )
}
}
}
else if( isCheck )
{
System::Console::WriteLine( "*** Check the fingerprint ***" );
System::Console::WriteLine();
System::Console::WriteLine( "The fingerprint has not been registered in the ROM yet." );
return;
}
// fingerprint の埋め込み
System::Console::WriteLine( "*** Register the fingerprint ***" );
cli::array<System::Byte> ^bytes;
if( isAscii )
if( fingerprint )
{
System::Console::WriteLine( "ASCII Charactors:" );
System::Console::WriteLine( "{0}", fingerprint );
bytes = TransStringToBytes( fingerprint, 32 );
System::Console::WriteLine( "*** Register the fingerprint ***" );
System::Console::WriteLine();
cli::array<System::Byte> ^bytes;
if( isAscii )
{
System::Console::WriteLine( "ASCII Charactors:" );
System::Console::WriteLine( "{0}", fingerprint );
System::Console::WriteLine();
bytes = TransStringToBytes( fingerprint, 32 );
}
else
{
bytes = TransHexStringToBytes( fingerprint, 32 );
}
pin_ptr<unsigned char> buf = &bytes[0]; // 解放の必要なし
memcpy( rh.s.reserved_C, buf, 32 );
SignRomHeader( &rh ); // 署名
OverwriteRomHeader( srlbin, &rh );
System::Console::WriteLine( "Hexadecimal Numbers:" );
System::Console::WriteLine( "{0}", TransBytesToHexString(bytes) );
System::Console::WriteLine();
}
else
{
bytes = TransHexStringToBytes( fingerprint, 32 );
}
pin_ptr<unsigned char> buf = &bytes[0]; // ‰ð•úÌ•K—vȵ
memcpy( rh.s.reserved_C, buf, 32 );
SignRomHeader( &rh ); // <20><>¼
System::Console::WriteLine( "Hexadecimal Numbers:" );
System::Console::WriteLine( "{0}", TransBytesToHexString(bytes) );
// maketad
if( isTad )

View File

@ -344,12 +344,12 @@ cli::array<System::Byte>^ TransStringToBytes( System::String ^src, const int len
bytes[i] = 0;
}
int j=0;
int n = (len < src->Length)?len:src->Length;
for( i=0; i < src->Length; i++ )
{
if( (src[i] != ' ') && (j < len) )
if( i < len )
{
bytes[j++] = (System::Byte)src[i];
bytes[i] = (System::Byte)src[i];
}
}
return bytes;
@ -376,6 +376,10 @@ cli::array<System::Byte>^ TransHexStringToBytes( System::String ^src, const int
}
if( (src[i] != ' ') && (j < len) )
{
if( (i+1) >= src->Length )
{
throw gcnew System::Exception("One hexadecimal number must be expressed by 2 charactors, for example \"6B\".");
}
bytes[j++] = System::Byte::Parse(src->Substring(i,2), System::Globalization::NumberStyles::HexNumber);
i += 2;
}
@ -522,6 +526,10 @@ void makeTad( System::String ^maketad_path, System::String ^srlpath, System::Str
{
throw gcnew System::Exception("Failed to transform SRL to TAD.");
}
else
{
System::Console::WriteLine( "Succeeded to transform." );
}
}
// ----------------------------------------------------------------------

View File

@ -0,0 +1,818 @@
"DeployProject"
{
"VSVersion" = "3:800"
"ProjectType" = "8:{978C614F-708E-4E1A-B201-565925725DBA}"
"IsWebType" = "8:FALSE"
"ProjectName" = "8:FingerprintTWLSetup"
"LanguageId" = "3:0"
"CodePage" = "3:1252"
"UILanguageId" = "3:0"
"SccProjectName" = "8:"
"SccLocalPath" = "8:"
"SccAuxPath" = "8:"
"SccProvider" = "8:"
"Hierarchy"
{
"Entry"
{
"MsmKey" = "8:_3B49ADDB433A430DBABEA66B4C6F4E5F"
"OwnerKey" = "8:_3DFFDFF35E454135AD3FBE6F59C6BCA0"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_3DFFDFF35E454135AD3FBE6F59C6BCA0"
"OwnerKey" = "8:_B144741D3BBE43B9B8E91A95FE18B531"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_B144741D3BBE43B9B8E91A95FE18B531"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_F83AF9653A3844EA828993912994ADDB"
"OwnerKey" = "8:_UNDEFINED"
"MsmSig" = "8:_UNDEFINED"
}
"Entry"
{
"MsmKey" = "8:_UNDEFINED"
"OwnerKey" = "8:_B144741D3BBE43B9B8E91A95FE18B531"
"MsmSig" = "8:_UNDEFINED"
}
}
"Configurations"
{
"Debug"
{
"DisplayName" = "8:Debug"
"IsDebugOnly" = "11:TRUE"
"IsReleaseOnly" = "11:FALSE"
"OutputFilename" = "8:Debug\\FingerprintTWLSetup.msi"
"PackageFilesAs" = "3:2"
"PackageFileSize" = "3:-2147483648"
"CabType" = "3:1"
"Compression" = "3:2"
"SignOutput" = "11:FALSE"
"CertificateFile" = "8:"
"PrivateKeyFile" = "8:"
"TimeStampServer" = "8:"
"InstallerBootstrapper" = "3:2"
"BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
{
"Enabled" = "11:TRUE"
"PromptEnabled" = "11:TRUE"
"PrerequisitesLocation" = "2:1"
"Url" = "8:"
"ComponentsUrl" = "8:"
"Items"
{
"{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.2.0"
{
"Name" = "8:.NET Framework 2.0 (x86)"
"ProductCode" = "8:Microsoft.Net.Framework.2.0"
}
"{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1"
{
"Name" = "8:Windows インストーラ 3.1"
"ProductCode" = "8:Microsoft.Windows.Installer.3.1"
}
}
}
}
"Release"
{
"DisplayName" = "8:Release"
"IsDebugOnly" = "11:FALSE"
"IsReleaseOnly" = "11:TRUE"
"OutputFilename" = "8:Release\\FingerprintTWLSetup.msi"
"PackageFilesAs" = "3:2"
"PackageFileSize" = "3:-2147483648"
"CabType" = "3:1"
"Compression" = "3:2"
"SignOutput" = "11:FALSE"
"CertificateFile" = "8:"
"PrivateKeyFile" = "8:"
"TimeStampServer" = "8:"
"InstallerBootstrapper" = "3:2"
"BootstrapperCfg:{63ACBE69-63AA-4F98-B2B6-99F9E24495F2}"
{
"Enabled" = "11:TRUE"
"PromptEnabled" = "11:TRUE"
"PrerequisitesLocation" = "2:1"
"Url" = "8:"
"ComponentsUrl" = "8:"
"Items"
{
"{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Net.Framework.2.0"
{
"Name" = "8:.NET Framework 2.0 (x86)"
"ProductCode" = "8:Microsoft.Net.Framework.2.0"
}
"{EDC2488A-8267-493A-A98E-7D9C3B36CDF3}:Microsoft.Windows.Installer.3.1"
{
"Name" = "8:Windows インストーラ 3.1"
"ProductCode" = "8:Microsoft.Windows.Installer.3.1"
}
}
}
}
}
"Deployable"
{
"CustomAction"
{
}
"DefaultFeature"
{
"Name" = "8:DefaultFeature"
"Title" = "8:"
"Description" = "8:"
}
"ExternalPersistence"
{
"LaunchCondition"
{
"{A06ECF26-33A3-4562-8140-9B0E340D4F24}:_54A02A2265434939A72B6A8182105D08"
{
"Name" = "8:.NET Framework"
"Message" = "8:[VSDNETMSG]"
"Version" = "8:2.0.50727"
"AllowLaterVersions" = "11:FALSE"
"InstallUrl" = "8:http://go.microsoft.com/fwlink/?LinkId=76617"
}
}
}
"File"
{
"{1FB2D0AE-D3B9-43D4-B9DD-F88EC61E35DE}:_F83AF9653A3844EA828993912994ADDB"
{
"SourcePath" = "8:..\\README.txt"
"TargetName" = "8:README.txt"
"Tag" = "8:"
"Folder" = "8:_9AD562D239AE45538903EC973D3A7011"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Vital" = "11:TRUE"
"ReadOnly" = "11:FALSE"
"Hidden" = "11:FALSE"
"System" = "11:FALSE"
"Permanent" = "11:FALSE"
"SharedLegacy" = "11:FALSE"
"PackageAs" = "3:1"
"Register" = "3:1"
"Exclude" = "11:FALSE"
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
}
}
"FileType"
{
}
"Folder"
{
"{3C67513D-01DD-4637-8A68-80971EB9504F}:_9AD562D239AE45538903EC973D3A7011"
{
"DefaultLocation" = "8:[ProgramFilesFolder][Manufacturer]\\[ProductName]"
"Name" = "8:#1925"
"AlwaysCreate" = "11:FALSE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:TARGETDIR"
"Folders"
{
}
}
"{1525181F-901A-416C-8A58-119130FE478E}:_B1EDE624A5D045E9B6BFB7F5CBB3BE32"
{
"Name" = "8:#1919"
"AlwaysCreate" = "11:FALSE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:ProgramMenuFolder"
"Folders"
{
}
}
"{1525181F-901A-416C-8A58-119130FE478E}:_EA0933EC80BA4994ACBBEDCCA826346C"
{
"Name" = "8:#1916"
"AlwaysCreate" = "11:FALSE"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Property" = "8:DesktopFolder"
"Folders"
{
}
}
}
"LaunchCondition"
{
}
"Locator"
{
}
"MsiBootstrapper"
{
"LangId" = "3:0"
"RequiresElevation" = "11:FALSE"
}
"Product"
{
"Name" = "8:Microsoft Visual Studio"
"ProductName" = "8:FingerprintTWL"
"ProductCode" = "8:{2DB70A66-66FE-4745-AA22-8E4B8CEAA172}"
"PackageCode" = "8:{C7186ADF-21B0-4BD0-AB86-46BEC5003DCB}"
"UpgradeCode" = "8:{7E1BDE16-5571-4BC2-8270-A59334D41679}"
"RestartWWWService" = "11:FALSE"
"RemovePreviousVersions" = "11:FALSE"
"DetectNewerInstalledVersion" = "11:TRUE"
"InstallAllUsers" = "11:FALSE"
"ProductVersion" = "8:1.0.0"
"Manufacturer" = "8:Nintendo"
"ARPHELPTELEPHONE" = "8:"
"ARPHELPLINK" = "8:"
"Title" = "8:FingerprintTWLSetup"
"Subject" = "8:"
"ARPCONTACT" = "8:Nintendo"
"Keywords" = "8:"
"ARPCOMMENTS" = "8:"
"ARPURLINFOABOUT" = "8:"
"ARPPRODUCTICON" = "8:"
"ARPIconIndex" = "3:0"
"SearchPath" = "8:"
"UseSystemSearchPath" = "11:TRUE"
"TargetPlatform" = "3:0"
"PreBuildEvent" = "8:"
"PostBuildEvent" = "8:"
"RunPostBuildEvent" = "3:0"
}
"Registry"
{
"HKLM"
{
"Keys"
{
"{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_33CA474C83A44906AC2AFD5F8ACE832F"
{
"Name" = "8:Software"
"Condition" = "8:"
"AlwaysCreate" = "11:FALSE"
"DeleteAtUninstall" = "11:FALSE"
"Transitive" = "11:FALSE"
"Keys"
{
"{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_258074F27B3E47E990ABAFA075B89DCE"
{
"Name" = "8:[Manufacturer]"
"Condition" = "8:"
"AlwaysCreate" = "11:FALSE"
"DeleteAtUninstall" = "11:FALSE"
"Transitive" = "11:FALSE"
"Keys"
{
}
"Values"
{
}
}
}
"Values"
{
}
}
}
}
"HKCU"
{
"Keys"
{
"{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_DDAF60CA279A449CA59EB4FD1443D70D"
{
"Name" = "8:Software"
"Condition" = "8:"
"AlwaysCreate" = "11:FALSE"
"DeleteAtUninstall" = "11:FALSE"
"Transitive" = "11:FALSE"
"Keys"
{
"{60EA8692-D2D5-43EB-80DC-7906BF13D6EF}:_A5CEDDBE98B540BBAF08C99BFAD4FAA4"
{
"Name" = "8:[Manufacturer]"
"Condition" = "8:"
"AlwaysCreate" = "11:FALSE"
"DeleteAtUninstall" = "11:FALSE"
"Transitive" = "11:FALSE"
"Keys"
{
}
"Values"
{
}
}
}
"Values"
{
}
}
}
}
"HKCR"
{
"Keys"
{
}
}
"HKU"
{
"Keys"
{
}
}
"HKPU"
{
"Keys"
{
}
}
}
"Sequences"
{
}
"Shortcut"
{
"{970C0BB2-C7D0-45D7-ABFA-7EC378858BC0}:_D3419CDED8374990AE68BDCDFFE41916"
{
"Name" = "8:FingerPrinterTWL"
"Arguments" = "8:"
"Description" = "8:"
"ShowCmd" = "3:1"
"IconIndex" = "3:0"
"Transitive" = "11:FALSE"
"Target" = "8:_B144741D3BBE43B9B8E91A95FE18B531"
"Folder" = "8:_EA0933EC80BA4994ACBBEDCCA826346C"
"WorkingFolder" = "8:_9AD562D239AE45538903EC973D3A7011"
"Icon" = "8:"
"Feature" = "8:"
}
}
"UserInterface"
{
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_17D83739B3B24B5A84DD013127BAC35E"
{
"Name" = "8:#1901"
"Sequence" = "3:2"
"Attributes" = "3:2"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_07BBDE1B001344A7BCBD964A53C1CC3A"
{
"Sequence" = "3:100"
"DisplayName" = "8:進行状況"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminProgressDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"ShowProgress"
{
"Name" = "8:ShowProgress"
"DisplayName" = "8:#1009"
"Description" = "8:#1109"
"Type" = "3:5"
"ContextData" = "8:1;True=1;False=0"
"Attributes" = "3:0"
"Setting" = "3:0"
"Value" = "3:1"
"DefaultValue" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_247F5262755442AE9F570F84E82E7082"
{
"Name" = "8:#1900"
"Sequence" = "3:2"
"Attributes" = "3:1"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_191A0EE7087E4E718D75D348ABB87577"
{
"Sequence" = "3:100"
"DisplayName" = "8:ようこそ"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminWelcomeDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"CopyrightWarning"
{
"Name" = "8:CopyrightWarning"
"DisplayName" = "8:#1002"
"Description" = "8:#1102"
"Type" = "3:3"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1202"
"DefaultValue" = "8:#1202"
"UsePlugInResources" = "11:TRUE"
}
"Welcome"
{
"Name" = "8:Welcome"
"DisplayName" = "8:#1003"
"Description" = "8:#1103"
"Type" = "3:3"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1203"
"DefaultValue" = "8:#1203"
"UsePlugInResources" = "11:TRUE"
}
}
}
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_5E36BDC4413340BE8B56BC06107F9AC1"
{
"Sequence" = "3:200"
"DisplayName" = "8:インストール フォルダ"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminFolderDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_C3470DA9675F41C19ABE20BB3F02B85B"
{
"Sequence" = "3:300"
"DisplayName" = "8:インストールの確認"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminConfirmDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_39786E9EA2D14928B284304AF5A11E4A"
{
"UseDynamicProperties" = "11:FALSE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdUserInterface.wim"
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_66A7D5C9289B476F890DB7F9F5E9EFDF"
{
"Name" = "8:#1902"
"Sequence" = "3:2"
"Attributes" = "3:3"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_DCFB96D2FD7B447C910E98CC99891793"
{
"Sequence" = "3:100"
"DisplayName" = "8:完了"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdAdminFinishedDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_838B2682DDF54F92AF8A2A8517AA89C9"
{
"Name" = "8:#1901"
"Sequence" = "3:1"
"Attributes" = "3:2"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_64072B989D8B44AAAFD1B1B26AF77D0B"
{
"Sequence" = "3:100"
"DisplayName" = "8:進行状況"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdProgressDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"ShowProgress"
{
"Name" = "8:ShowProgress"
"DisplayName" = "8:#1009"
"Description" = "8:#1109"
"Type" = "3:5"
"ContextData" = "8:1;True=1;False=0"
"Attributes" = "3:0"
"Setting" = "3:0"
"Value" = "3:1"
"DefaultValue" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{2479F3F5-0309-486D-8047-8187E2CE5BA0}:_83B6E4646D78440D8968D2FDF86EB0E5"
{
"UseDynamicProperties" = "11:FALSE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdBasicDialogs.wim"
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_96184C3774BC41BC8C373B589820A75D"
{
"Name" = "8:#1902"
"Sequence" = "3:1"
"Attributes" = "3:3"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_9725B1A61462490797A9633EF9707001"
{
"Sequence" = "3:100"
"DisplayName" = "8:完了"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdFinishedDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"UpdateText"
{
"Name" = "8:UpdateText"
"DisplayName" = "8:#1058"
"Description" = "8:#1158"
"Type" = "3:15"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1258"
"DefaultValue" = "8:#1258"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
"{DF760B10-853B-4699-99F2-AFF7185B4A62}:_D25E7CF993654C90A2A6E12BFED3D5F2"
{
"Name" = "8:#1900"
"Sequence" = "3:1"
"Attributes" = "3:1"
"Dialogs"
{
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_5AF861415BDE435C87784CAA44801525"
{
"Sequence" = "3:300"
"DisplayName" = "8:インストールの確認"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdConfirmDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_891205E731CA41D899C961E1D06EEC74"
{
"Sequence" = "3:100"
"DisplayName" = "8:ようこそ"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdWelcomeDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"CopyrightWarning"
{
"Name" = "8:CopyrightWarning"
"DisplayName" = "8:#1002"
"Description" = "8:#1102"
"Type" = "3:3"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1202"
"DefaultValue" = "8:#1202"
"UsePlugInResources" = "11:TRUE"
}
"Welcome"
{
"Name" = "8:Welcome"
"DisplayName" = "8:#1003"
"Description" = "8:#1103"
"Type" = "3:3"
"ContextData" = "8:"
"Attributes" = "3:0"
"Setting" = "3:1"
"Value" = "8:#1203"
"DefaultValue" = "8:#1203"
"UsePlugInResources" = "11:TRUE"
}
}
}
"{688940B3-5CA9-4162-8DEE-2993FA9D8CBC}:_FB5EB112AB1547588FECA81F9BEFF969"
{
"Sequence" = "3:200"
"DisplayName" = "8:インストール フォルダ"
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:FALSE"
"SourcePath" = "8:<VsdDialogDir>\\VsdFolderDlg.wid"
"Properties"
{
"BannerBitmap"
{
"Name" = "8:BannerBitmap"
"DisplayName" = "8:#1001"
"Description" = "8:#1101"
"Type" = "3:8"
"ContextData" = "8:Bitmap"
"Attributes" = "3:4"
"Setting" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
"InstallAllUsersVisible"
{
"Name" = "8:InstallAllUsersVisible"
"DisplayName" = "8:#1059"
"Description" = "8:#1159"
"Type" = "3:5"
"ContextData" = "8:1;True=1;False=0"
"Attributes" = "3:0"
"Setting" = "3:0"
"Value" = "3:1"
"DefaultValue" = "3:1"
"UsePlugInResources" = "11:TRUE"
}
}
}
}
}
}
"MergeModule"
{
"{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_3B49ADDB433A430DBABEA66B4C6F4E5F"
{
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:TRUE"
"SourcePath" = "8:microsoft_vc90_debugcrt_x86.msm"
"Properties"
{
}
"LanguageId" = "3:0"
"Exclude" = "11:FALSE"
"Folder" = "8:"
"Feature" = "8:"
"IsolateTo" = "8:"
}
"{CEE29DC0-9FBA-4B99-8D47-5BC643D9B626}:_3DFFDFF35E454135AD3FBE6F59C6BCA0"
{
"UseDynamicProperties" = "11:TRUE"
"IsDependency" = "11:TRUE"
"SourcePath" = "8:policy_9_0_Microsoft_VC90_DebugCRT_x86.msm"
"Properties"
{
}
"LanguageId" = "3:0"
"Exclude" = "11:FALSE"
"Folder" = "8:"
"Feature" = "8:"
"IsolateTo" = "8:"
}
}
"ProjectOutput"
{
"{5259A561-127C-4D43-A0A1-72F10C7B3BF8}:_B144741D3BBE43B9B8E91A95FE18B531"
{
"SourcePath" = "8:..\\Debug\\FingerPrinterTWL.exe"
"TargetName" = "8:"
"Tag" = "8:"
"Folder" = "8:_9AD562D239AE45538903EC973D3A7011"
"Condition" = "8:"
"Transitive" = "11:FALSE"
"Vital" = "11:TRUE"
"ReadOnly" = "11:FALSE"
"Hidden" = "11:FALSE"
"System" = "11:FALSE"
"Permanent" = "11:FALSE"
"SharedLegacy" = "11:FALSE"
"PackageAs" = "3:1"
"Register" = "3:1"
"Exclude" = "11:FALSE"
"IsDependency" = "11:FALSE"
"IsolateTo" = "8:"
"ProjectOutputGroupRegister" = "3:1"
"OutputConfiguration" = "8:"
"OutputGroupCanonicalName" = "8:Built"
"OutputProjectGuid" = "8:{F41F8415-6AF1-46DF-B771-30B5AE234B89}"
"ShowKeyOutput" = "11:TRUE"
"ExcludeFilters"
{
}
}
}
}
}

View File

@ -0,0 +1,64 @@
=============================================================================
TWL Fingerprinter
=============================================================================
Table of Contents
- Introduction
- Package Structure
- Required Environment
- Using the tool
- Licences
- Revision History
=======================================================================
Introduction
=======================================================================
This package includes the TWL Fingerprinter, a tool used to
register the fingerprinter in the TWL ROM.
=======================================================================
Package Structure
=======================================================================
FingerprintTWLSetup.msi : Installer
=======================================================================
Required Environment
=======================================================================
Microsoft Windows XP SP2
Microsoft .NET Framework 2.0
maketad.exe : included in TwlSDK
And following DLLs, which are not included in this package.
- cygwin1.dll
- cygcrypto-0.9.8.dll
=======================================================================
Using the Tool
=======================================================================
The TWL Fingerprinter tool has GUI mode and CUI(Console) mode.
GUI mode:
Execute either an icon on the desktop or on the install folder.
CUI mode:
Type following words on the command prompt and see usage.
> FingerprinterTWL.exe -h
=======================================================================
Licenses
=======================================================================
This product includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit (http://www.openssl.org/)
=======================================================================
Revision History
=======================================================================
Version 1.0 (2009/04/17)
- Initial version.