{"id":184,"date":"2010-04-18T00:18:03","date_gmt":"2010-04-18T09:18:03","guid":{"rendered":"\/blog\/?p=184"},"modified":"2023-09-21T09:39:13","modified_gmt":"2023-09-21T00:39:13","slug":"ddk-recognizer","status":"publish","type":"post","link":"https:\/\/hasu0707.duckdns.org\/blog\/?p=184","title":{"rendered":"[DDK] Recognizer"},"content":{"rendered":"\n<div class=\"article_post\">\n<p>\ud544\ud130 \ub4dc\ub77c\uc774\ubc84\ub97c \ub4f1\ub85d\ud560\ub54c<br \/><br \/>\ub808\ucf54\uadf8\ub098\uc774\uc838(\uc778\uc2dd\uae30)\uac00 \uc0ac\uc6a9\ub41c\ub2e4.<br \/><br \/>\uc77c\ub2e8 \uc9c0\uae08 \ud544\ud130\ub97c \ub4f1\ub85d\ud558\ub294\ub370<br \/><br \/>\uc55e\uc73c\ub85c \n\ub4f1\ub85d\ub418\ub294 VDO\ubcf4\ub2e4\ub294<br \/><br \/>\uc9c0\uae08 \ub4f1\ub85d\ub418\uc5b4 \uc788\ub294 VDO\uc5d0 \uae30\uc874\uc758 \ud544\ud130\ub97c \ubd99\uc774\ub294\uac8c \uc911\uc694\ud558\ub2e4,<br \/><br \/>\ubc31\uc2e0\uc744 \ubcf4\uba74 \uc7ac\ubd80\ud305\uc744 \uc548\ud558\uace0 \ud544\ud130\ub97c \n\ub2e4 \ubd99\uc774\ub294 \uae30\uc220\uc744 \uc9c0\ub2c8\uace0 \uc788\ub2e4.<br \/><br \/>\uc774\uac83\uc740 OSR\uc5d0\uc11c \ub9cc\ub4e0 \ub808\ucf54\uadf8\ub098\uc774\uc800\ub97c \uc0ac\uc6a9\ud558\ub294 \ub4ef\ud55c\ub370,,<br \/><br \/>\uc77c\ub2e8 A\uc0ac\uc758 V\ubc31\uc2e0 \ubc0f N\uc0ac\uc758 \nP\ubc31\uc2e0\uc744 \ubcf4\uba74<br \/><br \/>\ud544\ud130 \ub4dc\ub77c\uc774\ubc84\ub97c \ubd99\uc774\ub294 \ubaa8\uc2b5\uc744 \ubcfc \uc218 \uc788\ub2e4.<br \/><br \/>\uae30\ubcf8\uc801\uc73c\ub85c \ub514\ubc14\uc774\uc2a4 \ud2b8\ub9ac\uc5d0 FsRec\ub77c\ub294 \uac8c \n\uc874\uc7ac\ud558\ub294\ub370<br \/><br \/>\uc774\uac83\uc774 \ud30c\uc77c \uc2dc\uc2a4\ud15c \ub808\ucf54\uadf8\ub098\uc774\uc800\uc774\ub2e4.<br \/><br \/><\/p>\n<div class=\"dp-highlighter\">\n<div class=\"bar\">\n<div class=\"tools\"><a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160#\" target=\"_blank\" rel=\"noopener\"><font color=\"#a0a0a0\">view plain<\/font><\/a><a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160#\" target=\"_blank\" rel=\"noopener\"><font color=\"#a0a0a0\">copy to clipboard<\/font><\/a><a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160#\" target=\"_blank\" rel=\"noopener\"><font color=\"#a0a0a0\">print<\/font><\/a><a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160#\" target=\"_blank\" rel=\"noopener\"><font color=\"#a0a0a0\">?<\/font><\/a><\/div><\/div>\n<ol class=\"dp-cpp\"><li class=\"alt\"><span><span>InitializeObjectAttributes( &amp;ObjectAttributes, \n &nbsp;<\/span><\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pUnicodeString, &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; OBJ_CASE_INSENSITIVE, \n &nbsp;<\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NULL, &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NULL&nbsp; &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;); &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; ntStatus =&nbsp;ObOpenObjectByName( &amp;ObjectAttributes, &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0L, &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0L, &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0L, &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0L, &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;0L, &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&amp;Handle&nbsp; &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ); &nbsp; <\/span> \n<\/li><li><span>&nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; <\/span><span class=\"keyword\"><strong><font color=\"#006699\">if<\/font><\/strong><\/span><span>( !NT_SUCCESS( ntStatus )&nbsp;) \n &nbsp;<\/span> \n<\/li><li><span>&nbsp; &nbsp; { &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; <\/span><span class=\"keyword\"><strong><font color=\"#006699\">return<\/font><\/strong><\/span><span>&nbsp;NULL; &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; } &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; ntStatus =&nbsp;ObReferenceObjectByHandle( Handle,&nbsp; &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0x80000000, \n &nbsp;<\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NULL, &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; 0, &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &amp;pDriverObject, \n &nbsp;<\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; NULL&nbsp; &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;); &nbsp;<\/span><\/li><\/ol><\/div>&lt;TEXTAREA \nclass=\"cpp\" style=\"DISPLAY: none\" name=code rows=10 \ncols=60&gt;InitializeObjectAttributes( &amp;ObjectAttributes, pUnicodeString, \nOBJ_CASE_INSENSITIVE, NULL, NULL ); ntStatus = ObOpenObjectByName( \n&amp;ObjectAttributes, 0L, 0L, 0L, 0L, 0L, &amp;Handle ); if( !NT_SUCCESS( \nntStatus ) ) { return NULL; } ntStatus = ObReferenceObjectByHandle( Handle, \n0x80000000, NULL, 0, &amp;pDriverObject, NULL ); &lt;\/TEXTAREA&gt; <br \/><br \/>\uc774\ub7f0\uc2dd\uc73c\ub85c \n\uae30\uc874\uc758 CDO\uc5d0 Attach\ub41c VDO\ub97c \ucc3e\uc544\ub0b4\uc57c\ud55c\ub2e4.<br \/><br \/>\uadf8\ub9ac\uace0 VDO\uc758 \ucd5c\uc0c1\uc704\uc5d0 IoCreateDevice()\ub97c \n\ud55c\ub2e4\uc74c<br \/><br \/>IoAttachDeviceByPointer()\uc774\ub77c\ub294<span style=\"width: 226px; float: left; height: 196px;\" id=\"callbacknestssmhztistorycom1603952\">\n<object id=\"ssmhztistorycom1603952\" classid=\"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000\" height=\"100%\" width=\"100%\"><param name=\"_cx\" value=\"5953\"><param name=\"_cy\" value=\"5186\"><param name=\"FlashVars\" value=\"\"><param name=\"Movie\" value=\"http:\/\/cfs.tistory.com\/blog\/plugins\/CallBack\/callback.swf?destDocId=callbacknestssmhztistorycom1603952&amp;id=160&amp;callbackId=ssmhztistorycom1603952&amp;host=http:\/\/ssmhz.tistory.com&amp;float=left&amp;\"><param name=\"Src\" value=\"http:\/\/cfs.tistory.com\/blog\/plugins\/CallBack\/callback.swf?destDocId=callbacknestssmhztistorycom1603952&amp;id=160&amp;callbackId=ssmhztistorycom1603952&amp;host=http:\/\/ssmhz.tistory.com&amp;float=left&amp;\"><param name=\"WMode\" value=\"Transparent\"><param name=\"Play\" value=\"0\"><param name=\"Loop\" value=\"-1\"><param name=\"Quality\" value=\"High\"><param name=\"SAlign\" value=\"LT\"><param name=\"Menu\" value=\"0\"><param name=\"Base\" value=\"\"><param name=\"AllowScriptAccess\" value=\"never\"><param name=\"Scale\" value=\"NoScale\"><param name=\"DeviceFont\" value=\"0\"><param name=\"EmbedMovie\" value=\"0\"><param name=\"BGColor\" value=\"\"><param name=\"SWRemote\" value=\"\"><param name=\"MovieData\" value=\"\"><param name=\"SeamlessTabbing\" value=\"1\"><param name=\"Profile\" value=\"0\"><param name=\"ProfileAddress\" value=\"\"><param name=\"ProfilePort\" value=\"0\"><param name=\"AllowNetworking\" value=\"internal\"><param name=\"AllowFullScreen\" value=\"false\">\n    <embed autostart=\"false\" invokeurls=\"false\" allowscriptaccess=\"never\" allownetworking=\"internal\" wmode=\"transparent\" id=\"ssmhztistorycom1603952\" src=\"http:\/\/cfs.tistory.com\/blog\/plugins\/CallBack\/callback.swf?destDocId=callbacknestssmhztistorycom1603952&amp;id=160&amp;callbackId=ssmhztistorycom1603952&amp;host=http:\/\/ssmhz.tistory.com&amp;float=left&amp;\" menu=\"false\" type=\"application\/x-shockwave-flash\" height=\"100%\" width=\"100%\"><\/object><\/span>API\ub97c \n\uc774\uc6a9\ud574\uc11c \ubd99\uc5ec\uc57c\ud55c\ub2e4.<br \/><br \/>\n<div class=\"dp-highlighter\">\n<div class=\"bar\">\n<div class=\"tools\"><a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160#\" target=\"_blank\" rel=\"noopener\"><font color=\"#a0a0a0\">view plain<\/font><\/a><a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160#\" target=\"_blank\" rel=\"noopener\"><font color=\"#a0a0a0\">copy to clipboard<\/font><\/a><a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160#\" target=\"_blank\" rel=\"noopener\"><font color=\"#a0a0a0\">print<\/font><\/a><a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160#\" target=\"_blank\" rel=\"noopener\"><font color=\"#a0a0a0\">?<\/font><\/a><\/div><\/div>\n<ol class=\"dp-cpp\"><li class=\"alt\"><span><span>pDeviceExtension =&nbsp;pMyVDO-&gt;DeviceExtension; \n &nbsp;<\/span><\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pMyVDO-&gt;Flags &amp;= ~DO_DEVICE_INITIALIZING; \n &nbsp;<\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pDeviceExtension-&gt;nType =&nbsp;DRIVERTYPE; &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pDeviceExtension-&gt;chDrive =&nbsp;0; &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pLowerCDO =&nbsp;IoGetAttachedDevice( pVDO ); \n &nbsp;<\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ntStatus =&nbsp;IoAttachDeviceByPointer( pMyVDO, pVDO ); \n &nbsp;<\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;&nbsp; &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <\/span><span class=\"keyword\"><strong><font color=\"#006699\">if<\/font><\/strong><\/span><span>( NT_SUCCESS( ntStatus )&nbsp;)&nbsp; \n &nbsp;<\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; { &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pDeviceExtension-&gt;pNextDriverDeviceObject =&nbsp;pLowerCDO; \n &nbsp;<\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; pMyVDO-&gt;Flags |= (&nbsp;pLowerCDO-&gt;Flags &amp;&nbsp; \n &nbsp;<\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;( DO_BUFFERED_IO |&nbsp; &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;DO_DIRECT_IO )&nbsp; \n &nbsp;<\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; ); &nbsp; &nbsp; &nbsp; &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; } &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <\/span><span class=\"keyword\"><strong><font color=\"#006699\">else<\/font><\/strong><\/span><span>&nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; { &nbsp; <\/span> \n<\/li><li><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; IoDeleteDevice( pMyVDO ); &nbsp; <\/span> \n<\/li><li class=\"alt\"><span>&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; <\/span><\/li><\/ol><\/div>&lt;TEXTAREA \nclass=\"cpp\" style=\"DISPLAY: none\" name=code rows=10 cols=60&gt;pDeviceExtension \n= pMyVDO-&gt;DeviceExtension; pMyVDO-&gt;Flags &amp;= ~DO_DEVICE_INITIALIZING; \npDeviceExtension-&gt;nType = DRIVERTYPE; pDeviceExtension-&gt;chDrive = 0; \npLowerCDO = IoGetAttachedDevice( pVDO ); ntStatus = IoAttachDeviceByPointer( \npMyVDO, pVDO ); if( NT_SUCCESS( ntStatus ) ) { \npDeviceExtension-&gt;pNextDriverDeviceObject = pLowerCDO; pMyVDO-&gt;Flags |= ( \npLowerCDO-&gt;Flags &amp; ( DO_BUFFERED_IO | DO_DIRECT_IO ) ); } else { \nIoDeleteDevice( pMyVDO ); } &lt;\/TEXTAREA&gt; \n<br \/><br \/>IoRegisterFsRegistrationChange()\ub77c\ub294 \ud568\uc218\ub294 \ub514\ubc14\uc774\uc2a4\uac00 \ub4f1\ub85d\ub41c \uc774\ud6c4<br \/><br \/>\ub9c8\uc6b4\ud2b8\ub418\ub294 VDO\uc5d0 \n\ub300\ud574\uc11c\ub294 \ubaa8\ub450 \uac10\uc9c0\ub97c \ud558\ub294 \ub8e8\ud2f4\uc774\ub2e4.<br \/><br \/>\uc774 \ub8e8\ud2f4\uc744 \ub4f1\ub85d\ud558\uae30\uc804\uc5d0 \ub9c8\uc6b4\ud2b8\ub41c \ubcfc\ub968\uc744 \uc7a1\uc544\ub0b4\ub294 \uae30\uc220\uc774 \uad00\uac74\uc774\ub2e4.<br \/><br \/>L\"<a class=\"con_link\" href=\"\/\/\/\/NTFS\" target=\"_blank\" rel=\"noopener\">\\\\FileSystem\\\\NTFS<\/a>\", &nbsp; \/\/ FSD<br \/>L\"<a class=\"con_link\" href=\"\/\/\/\/CDFS\" target=\"_blank\" rel=\"noopener\">\\\\FileSystem\\\\CDFS<\/a>\", &nbsp; \/\/ \nCD<br \/>L\"<a class=\"con_link\" href=\"\/\/\/\/FASTFAT\" target=\"_blank\" rel=\"noopener\">\\\\FileSystem\\\\FASTFAT<\/a>\", \/\/ USB <br \/><br \/>\uae30\uc874\uc5d0 \ub4f1\ub85d\ub418\uc5c8\uc744 \ubc95\ud55c \ub514\ubc14\uc774\uc2a4 \n\ub4e4\uc774\ub2e4.<br \/><br \/>\uc774 \ub514\ubc14\uc774\uc2a4\ub4e4\uc744 \uc774\uc6a9\ud574\uc11c CDO\ub97c \ubf51\uc544\uc62c \uc218 \uc788\ub2e4.<br \/><br \/>\ub808\ucf54\uadf8\ub098\uc774\uc800, SSM\uc5d0\uc11c \uc0ac\uc678\uad50\uc721\uc744 \n\uac14\ub2e4\uac00,<br \/><br \/>\uc815\ub355\uc601\uc528\uc5d0\uac8c \uad50\uc721\uc744 \ub4e4\uc73c\ub7ec \uac00\uc11c <br \/><br \/>\uacfc\uc81c \uad00\ub828\ud574\uc11c \ubb3c\uc5b4\ubd10\uc11c \uc54c\uac8c\ub41c \uae30\uc220\uc778\ub370,<br \/><br \/>\uc77c\ub2e8 \ub0b4\uac00 \uc218\ud589\ud560\ub824\ub294 \n\uacfc\uc81c\uc640\ub294 \uac70\ub9ac\uac00 \uba40\uc5b4\uc11c \ub09c\uac10\ud588\ub2e4,, -_-;<br \/><br \/>3\uac1c\uc6d4\ub3d9\uc548 \uc0bd\uc9c8\uc744 \ud55c \uacb0\uacfc\ub77c\ub294,, \u314e <\/div>\n<div class=\"article_post\">&nbsp;<\/div>\n<div class=\"article_post\">\ucd9c\ucc98 : <a class=\"con_link\" href=\"http:\/\/ssmhz.tistory.com\/160\" target=\"_blank\" rel=\"noopener\">http:\/\/ssmhz.tistory.com\/160\n<\/a><\/div>\n","protected":false},"excerpt":{"rendered":"<p>\ud544\ud130 \ub4dc\ub77c\uc774\ubc84\ub97c \ub4f1\ub85d\ud560\ub54c \ub808\ucf54\uadf8\ub098\uc774\uc838(\uc778\uc2dd\uae30)\uac00 \uc0ac\uc6a9\ub41c\ub2e4. \uc77c\ub2e8 \uc9c0\uae08 \ud544\ud130\ub97c \ub4f1\ub85d\ud558\ub294\ub370 \uc55e\uc73c\ub85c \ub4f1\ub85d\ub418\ub294 VDO\ubcf4\ub2e4\ub294 \uc9c0\uae08 \ub4f1\ub85d\ub418\uc5b4 \uc788\ub294 VDO\uc5d0 \uae30\uc874\uc758 \ud544\ud130\ub97c \ubd99\uc774\ub294\uac8c \uc911\uc694\ud558\ub2e4, \ubc31\uc2e0\uc744 \ubcf4\uba74 \uc7ac\ubd80\ud305\uc744 \uc548\ud558\uace0 \ud544\ud130\ub97c \ub2e4 \ubd99\uc774\ub294 \uae30\uc220\uc744 \uc9c0\ub2c8\uace0 \uc788\ub2e4. \uc774\uac83\uc740 OSR\uc5d0\uc11c \ub9cc\ub4e0 \ub808\ucf54\uadf8\ub098\uc774\uc800\ub97c \uc0ac\uc6a9\ud558\ub294 \ub4ef\ud55c\ub370,, \uc77c\ub2e8 A\uc0ac\uc758 V\ubc31\uc2e0 \ubc0f N\uc0ac\uc758 P\ubc31\uc2e0\uc744 \ubcf4\uba74 \ud544\ud130 \ub4dc\ub77c\uc774\ubc84\ub97c \ubd99\uc774\ub294 \ubaa8\uc2b5\uc744 \ubcfc \uc218 \uc788\ub2e4. \uae30\ubcf8\uc801\uc73c\ub85c \ub514\ubc14\uc774\uc2a4 \ud2b8\ub9ac\uc5d0 FsRec\ub77c\ub294 \uac8c [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[24],"tags":[],"class_list":["post-184","post","type-post","status-publish","format-standard","hentry","category-development_winddk"],"_links":{"self":[{"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/184","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=184"}],"version-history":[{"count":0,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=\/wp\/v2\/posts\/184\/revisions"}],"wp:attachment":[{"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=184"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=184"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/hasu0707.duckdns.org\/blog\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=184"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}