How to get local sync folder of one drive sync? - onedrive

I have installed OneDrive on my local machine. Is there any way to get root folder/sync path of one drive ? I am looking for a programmatic way to fetch the root folder of one drive. Is there any API or interfaces through which I can access these details ? I want this API or interface for MacOS platform.

the information is in the registry.
Find the key HKEY_CURRENT_USER\Software\Microsoft\OneDrive\Accounts, you'll see your accounts as sub-keys. In them, look for the string value named UserFolder.

Related

Unable to list folders when using scoped app permission for Dropbox

I'm able to successfully list folder and contents when my dropbox developer app has full access, however, when I'm using scoped access only to a specific folder, it fails.
Now when I switch to scoped access to a specific folder I'm running into errors. This request should fail since the app does not have access to the folder.
Now when I put in the right folder path, I'm still getting the same error.
For reference I'm sharing my app details
It looks like you're using the App Folder permission. This will root all your paths relative to that app folder; your app will not be able to see outside of it.
For example, if the user sees the file as "/Apps/AppFolderAccess/myfile.txt", your app will see it as "/myfile.txt". By setting your path to /Apps/AppFolderAccess, it is effectively resolving as /Apps/AppFolderAccess/Apps/AppFolderAccess - which is not found.
If your application needs to see content outside its app folder, you should select full access.
Building on top of the other answer: you need to set the application permission to access type "Full Dropbox– Access to all files and folders in a user's Dropbox."
However, note that this requires you to delete your existing app and create a new one since it is not possible to change the scope of an existing app.

Copy files to local drive that requires different credentials

I've seen a lot of answers on copying files that use code to set a network share, with credentials, to copy to somewhere else. However I need a solution that will allow a user to copy from a network share they already have access for, to a local drive they don't have access to.
We run RDS servers and have locked down direct access to the local C:/ drive on the servers. We have been given a 3rd party program that needs to read data files that must be stored in a fixed path on the C:/ drive. These data files are updated once a month. Our users have read access but we do not want to give them direct write access to the root C:/ drive.
I need to write a piece of vb.net, or command line code in .bat file that will copy files to the Local C:/ whilst providing the details of a service account to provide the access.
As mentioned I've seen a lot about setting up a mapping to shared folder and passing creds, however we don't want to set the C:/ as mapped shared drive in this instance.
You don't want the user having access to the C Drive in general, is there any particular reason the permissions on the particular subfolder the files are going to can't have overriding permissions to allow writing to just that folder?
If that will not work, first thought that comes to mind is having a helper program that can be ran under a different user that does have that access. Set up an intermediate folder the user can write to, the program that they can launch drops the files into a folder they have access to. Helper program watches for files in the intermediate folder, moves them to where they need to be.
Set up would need to include adding a user that does have access to both locations, and then adding to task manager to launch the helper program under that other user at login.

why does the group EVERYONE need to have permissions on the company home folder in alfresco

As soon as I take away EVERYONE from the root folder (Company Home) in alfresco, some custom webscripts stop working and respond that this folder cannot be found. I would like to give a subset of EVERYONE (eg GROUP_A) permission from the rootfolder down. The "normal" usage of alfresco through Share keeps working when I do just that, only the webscripts give me some trouble. There are answers like this one:
Alfresco openCMIS connect to home folder
But that's just a workaround. Maybe some kind of system user needs to have permissions on the root folder?
I think this is a similar question: Alfresco webscript can't find Company Home folder
The most clear answer is (depends on which version you are) that the webscripts, CMIS & Java code need to know the path of the node you are in.
In Previous Alfresco versions even in Share a user needs to have Consumer rights on the parent folder otherwise the breadcrum would fail to load and other issues.
In 4.2.x if you retrieve a document/folder and you as user don't have rights on one of the parents folders OpenCMIS code breaks. This will/should also happen on some webscripts.
A user needs rights on the template folders within Data Dictionary, so it's good to keep the EVERYONE group on Data Dictionary.

Accessing Network shared paths in WinRT

Is there a way to access arbitrary network shared paths and read their content in WinRT? Programatically I want to read from the network shared paths in a WinRT App. I am getting an Access Denied error.
I was told that it might be possible to access the network shared path using file picker provided the app request for permission.
But in my case I do not have access to the file picker. Instead while parsing my model if there is path, I need to read the contents from that path. If that path is network shared path, it fails.
You won't be able to access arbitrary files without the user's explicit permission (via the File Picker).
Some well-known locations like the music and pictures library can be read if the application's manifest includes the associated Declaration, but beyond that all the application can access without the user granting permission (at least once) is its local application data storage.
Have a look at this question: Windows 8 Metro App File Share Access
You may be able to work around this limitation by using a Web Service that has access to the file shares. ;)

Objective-C: Reach a file on samba url

I have a mapped samba network drive in Finder (for example "smb://192.168.15.119/public/ptest/test.rtf") and would like to copy a file from that drive to my desktop.
Do you guys know how would one go about achieving this? It's not mandatory to connect to that url through the mapped drive, if you have a solution that simply takes that url and copies the file from it, that's totally OK too.
EDIT: Based on Bastian's answer, the solution was to use NSFileManager's copyItemAtPath method with the source path being:
NSString *sourcePathx1 = [NSString stringWithFormat:#"/Volumes/public/ptest/test.rtf"];
when you connect to a network drive finder will mount it to /Volumes ... you can then access the share over this mountpoint.
If the share is not connected you can connect it by executing
mount_smbfs //host/share /some/temp/folder
If you want to access the file directly you would need some kind of samba library like http://nicolas.brodu.numerimoire.net/common/programmation/libsmb/archived_site/index.html but I don't know any active one.