本文整理汇总了C++中IFileOperation::MoveItem方法的典型用法代码示例。如果您正苦于以下问题:C++ IFileOperation::MoveItem方法的具体用法?C++ IFileOperation::MoveItem怎么用?C++ IFileOperation::MoveItem使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IFileOperation
的用法示例。
在下文中一共展示了IFileOperation::MoveItem方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: PyCom_BuildPyException
// @pymethod |PyIFileOperation|MoveItem|Adds a move operation to the configuration
PyObject *PyIFileOperation::MoveItem(PyObject *self, PyObject *args)
{
IFileOperation *pIFO = GetI(self);
if ( pIFO == NULL )
return NULL;
// @pyparm <o PyIShellItem>|Item||The item to be moved
// @pyparm <o PyIShellItem>|DestinationFolder||The folder into which it will be moved
// @pyparm str|pszNewName|None|Name to be given to moved item, use None to keep original name
// @pyparm <o PyGFileOperationProgressSink>|Sink|None|Progress sink to receive notification for just this operation
PyObject *obItem;
PyObject *obDestinationFolder;
PyObject *obNewName = Py_None;
PyObject *obSink = Py_None;
IShellItem * pItem;
IShellItem * pDestinationFolder;
TmpWCHAR NewName;
IFileOperationProgressSink * pSink;
if ( !PyArg_ParseTuple(args, "OO|OO:MoveItem", &obItem, &obDestinationFolder, &obNewName, &obSink))
return NULL;
if (!PyWinObject_AsWCHAR(obNewName, &NewName, TRUE))
return NULL;
if (!PyCom_InterfaceFromPyInstanceOrObject(obItem, IID_IShellItem, (void **)&pItem, FALSE))
return NULL;
if (!PyCom_InterfaceFromPyInstanceOrObject(obDestinationFolder, IID_IShellItem, (void **)&pDestinationFolder, FALSE)) {
PYCOM_RELEASE(pItem);
return NULL;
}
if (!PyCom_InterfaceFromPyInstanceOrObject(obSink, IID_IFileOperationProgressSink, (void **)&pSink, TRUE)) {
PYCOM_RELEASE(pItem);
PYCOM_RELEASE(pDestinationFolder);
return NULL;
}
HRESULT hr;
PY_INTERFACE_PRECALL;
hr = pIFO->MoveItem(pItem, pDestinationFolder, NewName, pSink);
pItem->Release();
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;
}