Skip to content

LogicDaemon/win32linktypes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

win32linktypes

A small Go module for Windows that determines the type of a filesystem link (Symlink, Directory Symlink, Junction, etc.) by analyzing its reparse point attributes.

Installation

go get github.com/LogicDaemon/win32linktypes

Usage

package main

import (
	"fmt"
	"log"

	"github.com/LogicDaemon/win32linktypes"
)

func main() {
	linkType, err := win32linktypes.GetType("C:\\path\\to\\link")
	if err != nil {
		log.Fatalf("Error: %v", err)
	}

	fmt.Printf("Link type: %s\n", linkType)
	// Output could be: "File Symlink", "Directory Symlink", "Junction", "Normal", etc.
}

Testing

Ensure you are running on a Windows system with Developer Mode enabled or as Administrator (required for MKLINK usage). Then simply run:

go test -v

About

Go stdlib lacks facilities to distinguish between junctions (reparse points), file symlinks and directory symlinks. This package helps with that.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages