本文整理汇总了C++中IFileOperation::NewItem方法的典型用法代码示例。如果您正苦于以下问题:C++ IFileOperation::NewItem方法的具体用法?C++ IFileOperation::NewItem怎么用?C++ IFileOperation::NewItem使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IFileOperation
的用法示例。
在下文中一共展示了IFileOperation::NewItem方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PyCom_BuildPyException
// @pymethod |PyIFileOperation|NewItem|Creates a new file as part of the operation
PyObject *PyIFileOperation::NewItem(PyObject *self, PyObject *args)
{
IFileOperation *pIFO = GetI(self);
if ( pIFO == NULL )
return NULL;
// @pyparm <o PyIShellItem>|DestinationFolder||Folder in which to create the file
// @pyparm int|FileAttributes||Combination of win32con.FILE_ATTRIBUTE_* flags
// @pyparm str|Name||Name of the new file
// @pyparm str|TemplateName|None|Template file used to initialize the new file
// @pyparm <o PyGFileOperationProgressSink>|Sink|None|Progress sink for just this operation
PyObject *obDestinationFolder;
PyObject *obName;
PyObject *obTemplateName = Py_None;
PyObject *obSink = Py_None;
IShellItem * pDestinationFolder;
DWORD FileAttributes;
TmpWCHAR Name;
TmpWCHAR TemplateName;
IFileOperationProgressSink * pSink;
if (!PyArg_ParseTuple(args, "OkO|OO:NewItem", &obDestinationFolder, &FileAttributes, &obName,
&obTemplateName, &obSink))
return NULL;
if (!PyWinObject_AsWCHAR(obName, &Name, FALSE))
return NULL;
if (!PyWinObject_AsWCHAR(obTemplateName, &TemplateName, TRUE))
return NULL;
if (!PyCom_InterfaceFromPyInstanceOrObject(obDestinationFolder, IID_IShellItem, (void **)&pDestinationFolder, FALSE))
return NULL;
if (!PyCom_InterfaceFromPyInstanceOrObject(obSink, IID_IFileOperationProgressSink, (void **)&pSink, TRUE)) {
PYCOM_RELEASE(pDestinationFolder);
return NULL;
}
HRESULT hr;
PY_INTERFACE_PRECALL;
hr = pIFO->NewItem(pDestinationFolder, FileAttributes, Name, TemplateName, pSink);
pDestinationFolder->Release();
if (pSink)
pSink->Release();
PY_INTERFACE_POSTCALL;
if ( FAILED(hr) )
return PyCom_BuildPyException(hr, pIFO, IID_IFileOperation );
Py_INCREF(Py_None);
return Py_None;
}