but it does not work bacause CreateField() does not create
"MFNode" and I can not use the MFNode.Add Method.
CComPtr<IFieldObject> field;
hr = m_Engine->CreateField(CComBSTR(L"MFNode"), &field);
Are you sure that field creation failed (field is NULL)?
What is the value of HRESULT returned by CreateField method?
I checked and hr==0
I don't know why? Does it mean that creation fails?
Nope, it means that field was successfully created (hr == S_OK).
Please read some book (or at least good paper) on COM essentials. It will be difficult for you to go further without this knowledge.