Copyright | 2012 shelarcy |
---|---|
License | BSD-style |
Maintainer | shelarcy@gmail.com |
Stability | Provisional |
Portability | Non-portable (Win32 API) |
Safe Haskell | Safe |
Language | Haskell2010 |
Handling symbolic link using Win32 API. [Vista of later and desktop app only]
Note: You should worry about UAC (User Account Control) when use this module's function in your application:
- require to use 'Run As Administrator' to run your application.
- or modify your application's manifect file to add
<requestedExecutionLevel level=
requireAdministrator
uiAccess=false
/>.
Synopsis
- type SymbolicLinkFlags = DWORD
- c_CreateSymbolicLink :: LPTSTR -> LPTSTR -> SymbolicLinkFlags -> IO BOOL
- sYMBOLIC_LINK_FLAG_FILE :: SymbolicLinkFlags
- sYMBOLIC_LINK_FLAG_DIRECTORY :: SymbolicLinkFlags
- createSymbolicLink :: FilePath -> FilePath -> SymbolicLinkFlags -> IO ()
- createSymbolicLinkFile :: FilePath -> FilePath -> IO ()
- createSymbolicLinkDirectory :: FilePath -> FilePath -> IO ()
- createSymbolicLink' :: FilePath -> FilePath -> SymbolicLinkFlags -> IO ()
Documentation
type SymbolicLinkFlags = DWORD #
c_CreateSymbolicLink :: LPTSTR -> LPTSTR -> SymbolicLinkFlags -> IO BOOL #
:: FilePath | Target file path |
-> FilePath | Symbolic link name |
-> SymbolicLinkFlags | |
-> IO () |
createSymbolicLink* functions don't check that file is exist or not.
NOTE: createSymbolicLink* functions are flipped arguments to provide compatiblity for Unix,
except createSymbolicLink'
.
If you want to create symbolic link by Windows way, use createSymbolicLink'
instead.
createSymbolicLinkFile :: FilePath -> FilePath -> IO () #
createSymbolicLinkDirectory :: FilePath -> FilePath -> IO () #
:: FilePath | Symbolic link name |
-> FilePath | Target file path |
-> SymbolicLinkFlags | |
-> IO () |