저는 Windows-10을 사용하고 있습니다.
나는 컴파일된 파일의 세부사항에서 ShortSha 정보를 얻기 위해 꽤 많은 작업을 했습니다. 이제 해당 정보를 클립보드에 복사하고 싶지만 이 스크린샷에서 볼 수 있듯이 작동하지 않는 것 같습니다.
보시다시피 정보를 선택할 수 있지만 클립보드에 복사할 수는 없지만 Git-Extensions 버전 관리 시스템에서 해당 정보를 다시 찾으려면 ShortSha를 복사하고 싶습니다.
내 Windows 버전에 관한 한 다음 winver
명령의 결과는 다음과 같습니다.
참고 사항: 해당 정보를 복사할 수 있는 Windows 버전에서 작업한 적이 있다고 확신합니다.윈도우 서버버전).
편집하다:
다른 Windows 환경에서 이 작업을 수행한 것으로 확신하므로 해당 기능의 정확한 이름과 이러한 Windows 환경의 예를 알고 싶습니다. 그렇게 패치 검색을 시작할 수도 있습니다.
Edit2: PowerShell에 대한 설명
Powershell에서 다음 명령을 실행했는데 이는 매우 유망합니다.
Get-Item "C:\Directory\Application.dll").VersionInfo.ProductVersion
이 솔루션을 진행하려면 다음 사항을 알아야 합니다.
- 해당 결과를 클립보드에 복사하기 위한 입력으로 사용하는 방법(
Set-Clipboard -Value Get-Item "C:\Directory\Application.dll").VersionInfo.ProductVersion
작동하지 않음) - 이를 Windows 상황에 맞는 메뉴에 통합하는 방법(해당 파일에 대해 마우스 오른쪽 버튼을 클릭하고 명령 실행)
Edit3: Windows Server에 대한 설명
저는 이 기능을 사용하여 Windows Server에서 작업하고 있다는 것을 알게 되었습니다. Windows-10 버전에서는 이 기능이 작동하지 않을 수 있나요? 그렇지 않은 경우 이 작업을 수행할 수 있는 패치가 있습니까?
답변1
PowerShell이 거의 정확했지만 괄호 한 쌍이 누락되었습니다.
Set-Clipboard -Value (Get-Item "C:\Directory\Application.dll").VersionInfo.ProductVersion
컨텍스트 메뉴에서 사용하려면 .ps1
다음 내용으로 스크립트 파일을 생성하세요. 내 것은 C:\Temp\test.ps1
.
$param1=$args[0]
Set-Clipboard -Value (Get-Item "$param1").VersionInfo.ProductVersion
이제 다음 텍스트를 파일에 복사한 .reg
다음 두 번 클릭하여 레지스트리로 가져옵니다. "DLL 버전 가져오기"라는 컨텍스트 메뉴 작업이 생성되고 위 스크립트를 사용합니다(파일 이름 안에 이중 백슬래시를 사용하여 아래 텍스트에서 스크립트에 대한 올바른 경로를 설정해야 합니다).
Windows Registry Editor Version 5.00
[HKEY_CURRENT_USER\SOFTWARE\Classes\dllfile]
[HKEY_CURRENT_USER\SOFTWARE\Classes\dllfile\shell]
[HKEY_CURRENT_USER\SOFTWARE\Classes\dllfile\shell\DLLVersion]
@="Get DLL version"
[HKEY_CURRENT_USER\SOFTWARE\Classes\dllfile\shell\DLLVersion\command]
@="powershell.exe -ExecutionPolicy Bypass -File \"C:\\Temp\\test.ps1\" \"%1\""
새로운 상황에 맞는 메뉴 항목을 즉시 사용할 수 있습니다.
답변2
귀하의 명령이 거의 정확하고 왼쪽 괄호 하나만 누락되었기 때문에 많은 것을 제공할 수는 없지만 일괄 처리를 수행하는 방법을 알려드릴 수 있습니다.
(Get-Item "C:\Directory\Application.dll").VersionInfo.ProductVersion
위의 내용은 원하는 정보를 얻고 Set-Clipboard
파이프라인 인수를 허용하므로 출력을 cmdlet으로 파이프라인할 수 있습니다.
(Get-Item "C:\Directory\Application.dll").VersionInfo.ProductVersion | Set-Clipboard
별칭을 사용하여 명령을 더 짧게 만들 수도 있습니다.
(gi "Path\to\file.dll").VersionInfo.ProductVersion | Set-Clipboard
gi
의 별칭입니다 Get-Item
.
기본적으로 Set-Clipboard
현재 클립보드가 지워집니다. 현재 클립보드를 유지하려면 -Append
스위치를 사용하세요.
여러 dll 버전을 얻으려고 한다고 가정합니다. Get-ChildItem
디렉터리에 있는 모든 dll을 나열하는 데 사용할 수 있습니다.
Get-ChildItem -Path "path\to\folder" -File -Force -Recurse -Filter *.dll
별칭:
gci "path\to\folder" -file -fo -r -filt *.dll
각 dll의 버전을 얻으려면:
Get-ChildItem "path\to\folder" -file -force -recurse -filter *.dll | ForEach-Object {$_.VersionInfo.ProductVersion}
별칭은 문자열로 이름과 버전을 가져옵니다 ForEach-Object
.%
Get-ChildItem "path\to\folder" -file -force -recurse -filter *.dll | ForEach-Object {"Path: $($_.FullName), Version: $($_.VersionInfo.ProductVersion)"}
위의 내용은 다음과 같은 문자열 배열을 생성합니다.
Path: C:\Windows\System32\vcruntime140.dll, Version: 14.28.29304.1
이 배열을 개행 문자로 구분된 거대한 문자열로 결합하려면 다음을 수행하세요.
(Get-ChildItem "path\to\folder" -file -force -recurse -filter *.dll | ForEach-Object {"Path: $($_.FullName), Version: $($_.VersionInfo.ProductVersion)"}) -Join "`r`n"
마지막으로 이 모든 내용을 클립보드에 붙여넣습니다.
((Get-ChildItem "path\to\folder" -file -force -recurse -filter *.dll | ForEach-Object {"Path: $($_.FullName), Version: $($_.VersionInfo.ProductVersion)"}) -Join "`r`n") | Set-Clipboard
이 모든 것을 함수로 묶습니다.
Function Clip-DLLVersion {
param(
[string]$path,
[bool]$append = $false
)
$data = (Get-ChildItem $path -file -force -recurse -filter *.dll | ForEach-Object {"Path: $($_.FullName), Version: $($_.VersionInfo.ProductVersion)"}) -Join "`r`n"
Switch ($append)
{
$true {Set-Clipboard -Value $data -Append}
$false {Set-Clipboard -Value $data}
}
}
사용 예:
Clip-DLLVersion -path "$Env:WINDIR\System32"
편집하다
댓글별로 업데이트됨은 clip
의 별칭이 아니므 Set-Clipboard
로 일반적으로 적용 가능하도록 별칭이 지정된 명령을 수정했습니다.
편집 1
코드의 여러 오타를 수정했습니다. 폰으로 다 적어서 실행할 기회도 없었고, 이름을 알아내려고 첫 번째 명령에 오타가 있었고, 그 명령을 다음 명령에 복사해서 붙여넣었는데 지금까지 눈치채지 못했어요 .
답변3
키보드의 화면 인쇄 버튼을 사용하여 화면 단축을 시도할 수 있습니다. 또는 Share X와 같은 타사 소프트웨어를 사용하세요. 그런 다음 OCR을 사용하여 텍스트로 변환하세요.
답변4
PowerShell을 사용하여 파일 세부 정보를 얻을 수 있습니다. Windows 10에서도 작동합니다.
예를 들어 에 대한 파일 정보를 얻으려면 다음을 Autoruns64.exe
실행합니다.
(Get-Item "D:\tools\Autoruns64.exe").VersionInfo | format-list * | Clip
컨텍스트 메뉴 추가에 관해 사용자는사이먼S그 부분을 다룬 것 같습니다.