HRESULT CShellNSE::CreateSubKeys(LPCTSTR lpszModule, LPCTSTR lpszCLSID, REGSTRUCT *pEntries) { for(int i = 0; ClsidEntries[i].hRootKey; i++) { CreateSubKey(lpszCLSID, &ClsidEntries[i], lpszModule); } return S_OK; }
void yxyDES2::InitializeKey(char* srcBytes,unsigned int keyN) { //convert 8 char-bytes key to 64 binary-bits char sz_64key[64] = {0}; Bytes2Bits(srcBytes,sz_64key,64); //PC 1 char sz_56key[56] = {0}; for(int k=0;k<56;k++) { sz_56key[k] = sz_64key[PC1_Table[k]-1]; } CreateSubKey(sz_56key,keyN); }
HRESULT CShellNSE::RegisterProperties(HINSTANCE hInst, GUID guid, GUID guidProperties) { HRESULT hr; TCHAR szCLSID[MAX_PATH]; TCHAR szCLSID_Properties[MAX_PATH]; TCHAR szModule[MAX_PATH]; CString::GuidToString(guid, szCLSID, ARRAYSIZE(szCLSID)); CString::GuidToString(guidProperties, szCLSID_Properties, ARRAYSIZE(szCLSID_Properties)); //get this DLL's path and file name ::GetModuleFileName(hInst, szModule, ARRAYSIZE(szModule)); CreateSubKeys(szModule, szCLSID_Properties, PropertyClsidEntries); hr = CreateSubKey(szCLSID, ®Properties, szCLSID_Properties); return hr; }