仅从dll文件获取版本号

时间:2019-03-27 18:36:54

标签: batch-file cmd wmic

我正在尝试获取.dll文件的版本,但仅获取版本号。

我找到了代码

wmic datafile where name='C:\\...\\MY_FILE.dll' get version

此代码返回:

Version
3.56.0.1

我只需要将返回值设置为“ 3.56.0.1”,就可以将其保存在变量中,因为以后可以调用echo。

set var="HOW DO I DO?"
echo %var%

我怎么能得到这个?

我也可以使用下面的代码,但是以这种格式,我认为它更难

wmic datafile where name='C:\\...\\MY_FILE.dll' get version /format:list

此代码返回:

Version=3.56.0.1

5 个答案:

答案 0 :(得分:3)

与发布的内容类似,只是有微小的差异。

一个

@For /F "Delims=" %%A In ('WMIC DataFile Where "Name='C:\\...\\MY_FILE.dll'" Get Version /Value 2^>Nul')Do @For /F "Tokens=*" %%B In ("%%A")Do @Set "%%B"
@Echo(%Version%&Pause

版本:

For /F "Delims=" %A In ('WMIC DataFile Where "Name='C:\\...\\MY_FILE.dll'" Get Version /Value 2^>Nul')Do @For /F "Tokens=*" %B In ("%A")Do @Set "%B"

变量%Version%应该是本地环境的set

答案 1 :(得分:2)

因此,您将需要一个for循环来执行此操作。通过从//DataCardValue6 is my person dropdown control If(varAlwaysTrueForTest, myself, DataCardValue6.Selected) 运行for /?来获得更多帮助

cmd.exe

请注意,该帮助不会帮助您使用@echo off for /f "tokens=1,* delims==" %%i in ('wmic datafile where name^="C:\\...\\MY_FILE.dll" get version /format:list') do if not defined var set var=%%j echo %var% 上的脱字符号,但是您可以在此处找到帮助。

答案 2 :(得分:2)

  • 您需要使用for /f进行解析。
  • 和另一个for /f来修复损坏的WMIC输出。

在cmdline上(使用Windows dll):

For /f "usebackqdelims=" %A in (`wmic datafile where name^='C:\\Windows\\System32\\authui.dll' get version /format:list^|findstr "Version"`) do @For /F "delims=" %B in ("%A") do @Set "%B"
set Version
Version=10.0.17134.1

在批处理文件中,将for元变量的百分号加倍

答案 3 :(得分:2)

您应该使用:

@echo off

for /F "delims== tokens=2" %%A IN ('wmic datafile where name^="C:\\...\\MY_FILE.dll" get version /format:list') do (
    for %%B IN ("%%A") do set "var_name=%%~B"
)
echo %var_name%

循环执行您的命令,并根据指定的距离(=)查找第二个令牌。

由于wmic异常行尾(<CR><CR><LF>),您应该使用双for循环。

答案 4 :(得分:0)

如果您使用PowerShell编写脚本,则可以使用:

R1 = randint(1,16)
L1.config(text=str(R1))

如果要在.bat文件脚本中执行此操作,则会有一些开销。

    function load(){
    let listLoad = "";
    for (var i = 0; i < localStorage.length; i++) {
    var keyLS = JSON.parse(localStorage.getItem(localStorage.key(i)));
    listLoad += `<tr>
                 <span id="thisID" style="display:none">${keyLS.id}</span>
                 <td>${keyLS.name}</td>
                 <td>${keyLS.price}</td>
                 <td>${keyLS.quantity}</td>
                 <td><button type="submit"id="addOne" class="btn btn-success addOneItem">+</button></td>
                 <td><button class="btn btn-danger removeOneItem">-</button></td>
                 </tr>`


                }
     if(listLoad != ""){
         $("#cleanCart").css("display","inline");

     }
     document.getElementById('itsTboDy1').innerHTML = listLoad;
}
相关问题