I have a new Visual Studio 2015 FSharp project (.NET Framework 4.6 / FSharp Core 4.4). I added a script file and code as follows:
open System.Web
open System.Web.Security
let userName = "Jamie"
let user = Membership.GetUser(userName)
When I run it, I get:
System.UnauthorizedAccessException: Access to the path "C: \ Program Files (x86) \ Microsoft SDKs \ F # \ 4.0 \ Framework \ v4.0 \ App_Data" is denied. in System.IO .__ Error.WinIOError (Int32 errorCode, String maybeFullPath) in System.IO.Directory.InternalCreateDirectory (String fullPath, String path, Object dirSecurityObj, Boolean checkHost) in System.IO.Directory.InternalCreateDirectoryHelper (String path, Boolean checkHost) in System.IO.Directory.CreateDirectory (String path) in System.Web.DataAccess.SqlConnectionHelper.CreateMdfFile (String fullFileName, String dataDir, String connectionString) in System.Web.DataAccess.SqlConnectionHelper.EnsureDBFile (System connectionString) .Web.DataAccess.SqlConnectionHelper.GetConnection (String connectionString, Boolean revertImpersonation) in System.Web.Security.SqlMembershipProvider.GetUser (username, Boolean userIsOnline String) in System.Web.Security.Membership.GetUser (username, Boolean userIsOnline),
, Sql Server - , Windows. ?
1
( )
# .NET 2.0
F #
#r "System.DirectoryServices.dll"
open System
open System.DirectoryServices
let localMachine = new DirectoryEntry("WinNT://localhost")
let entries = localMachine.Children
let user = entries.Add("NewUser","user")
user.Properties.["FullName"].Add("Local User") |> ignore
user.Invoke("SetPassword","P@ssw0rd")
user.Invoke("Put",[|box "UserFlags"; box 0x10000|])
user.CommitChanges()
System.UnauthorizedAccessException: Access is denied.
at System.DirectoryServices.Interop.UnsafeNativeMethods.IAds.SetInfo()
, , . WindowsIdentity.GetCurrent(), ,
fsi ?