3
當我調用IoCreateSymbolicLink失敗狀態STATUS_OBJECT_NAME_COLLISION.I有代碼在我的驅動程序,我試圖創建NT和DOS之間的符號鏈接名稱。IoCreateSymbolicLink當它將返回STATUS_OBJECT_NAME_COLLISION
當通常這個錯誤會導致?
RtlInitUnicodeString(
&deviceName,
L"\\Device\\StreamEitor"
);
RtlInitUnicodeString(
&symbolicLinkName,
L"\\DosDevices\\StreamEitor"
);
status = IoCreateDevice(
driverObject,
0,
&deviceName,
FILE_DEVICE_NETWORK,
0,
FALSE,
&gDeviceObject
);
if (!NT_SUCCESS(status))
{
goto Exit;
}
status = IoCreateSymbolicLink(&symbolicLinkName, &deviceName);
if (!NT_SUCCESS(status)) {
//IoDeleteDevice(ControlDeviceObject);
DbgPrint("IoCreateSymbolicLink failed %x\n", status);
goto Exit;
}