VixHandle VixVM_SetSharedFolderState(VixHandle vmHandle, const char *shareName, const char *hostPathName, VixMsgSharedFolderOptions flags, VixEventProc *callbackProc, void *clientData);
This function modifies the state of a shared folder mounted in the virtual machine.
VixHandle jobHandle; VixError err; int numSharedFolders; char *folderName; char *folderHostPath; int folderFlags; int i; jobHandle = VixVM_GetNumSharedFolders(vmHandle, NULL, NULL); err = VixJob_Wait(jobHandle, VIX_PROPERTY_JOB_RESULT_SHARED_FOLDER_COUNT, &numSharedFolders, VIX_PROPERTY_NONE); Vix_ReleaseHandle(jobHandle); if (VIX_OK != err) { // handle error } for (i = 0; i < numSharedFolders; i++) { jobHandle = VixVM_GetSharedFolderState(vmHandle, i, NULL, NULL); err = VixJob_Wait(jobHandle, VIX_PROPERTY_JOB_RESULT_ITEM_NAME, &folderName, VIX_PROPERTY_JOB_RESULT_SHARED_FOLDER_HOST, &folderHostPath, VIX_PROPERTY_JOB_RESULT_SHARED_FOLDER_FLAGS, &folderFlags, VIX_PROPERTY_NONE); Vix_ReleaseHandle(jobHandle); if (VIX_OK != err) { // handle error } /* * make all folders writable */ jobHandle = VixVM_SetSharedFolderState(vmHandle, folderName, folderHostPath, VIX_SHAREDFOLDER_WRITE_ACCESS, NULL, NULL); err = VixJob_Wait(jobHandle, VIX_PROPERTY_NONE); Vix_ReleaseHandle(jobHandle); if (VIX_OK != err) { // handle error } Vix_FreeBuffer(folderName); Vix_FreeBuffer(folderHostPath); }