精华内容
下载资源
问答
  • [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'TargetDir' to value '' [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'DefaultAllUsersTargetDir' to value '...

    一、问题出现

    在安装Python客户端的过程中出现这个问题,百度上很少有解决方案,好不容易找到了才解决,所以自己记录下来,以后有人遇到就可以解决了。

    二、问题展示

     

    日志如下:

    [1E298:22034][2018-12-10T20:04:30]i001: Burn v3.10.0.2103, Windows v10.0 (Build 14393: Service Pack 0), path: E:\浏览器下载\安装包\python-3.5.1-amd64.exe
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'ActionLikeInstalling' to value 'Installing'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'ActionLikeInstallation' to value 'Setup'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'ShortVersion' to value '3.5'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing numeric variable 'ShortVersionNoDot' to value '35'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'WinVer' to value '3.5'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing numeric variable 'WinVerNoDot' to value '35'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing numeric variable 'InstallAllUsers' to value '0'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing numeric variable 'InstallLauncherAllUsers' to value '1'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'TargetDir' to value ''
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'DefaultAllUsersTargetDir' to value '[ProgramFiles64Folder]Python[WinVerNoDot]'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'TargetPlatform' to value 'x64'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 'DefaultJustForMeTargetDir' to value '[LocalAppDataFolder]Programs\Python\Python[WinVerNoDot]'
    [1E298:22034][2018-12-10T20:04:30]i000: Initializing string variable 

    三、解决方案

    单选安装包,右键选择以管理员身份运行,然后就可以安装成功了。

     

    备注:https://www.cnblogs.com/suogasus/p/4894172.html这个网址是我找到解决方案的博客,谢谢博主。

    展开全文
  • $(TargetPath) or $(TargetDir) are empty on PostBuild event on netstandard project 从下面的答复中,我们看到了这条关键内容: 大意似乎是,编译事件被target元素代替了。但是大哥,都这么久了,为啥通过...
    • 前言

    最近客户反馈,为啥不用xcopy命令代替我自己写的命令来完成插件编译复制:

    我的:

    <PostBuildEvent>call "$(SolutionDir)tools\tools\Magicodes.CmdTools.exe" copy -s "$(SolutionDir)plus\Jxy.WeChat\Jxy.WeChat.Core\bin\Debug\net461\Jxy.WeChat.Core.dll" -t "$(SolutionDir)src\Magicodes.Admin.Web.Mvc\wwwroot\PlugIns"</PostBuildEvent>

    <RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>

     

    推荐的:

    call xcopy /s /y "$(TargetPath)" "$(SolutionDir)src\ Magicodes.Admin.Web.Mvc \wwwroot\PlugIns\"

     

    我深以为然,xcopy是我之前经常用来做编译复制的命令,为啥我后面自己整了一个工具来复制呢?太久了,记不起来了,索性鼓捣鼓捣。

     

    • $(TargetPath)变量为空

    很快,我就发现了问题。在.NET Core的工程中,很多变量是获取不到值的,如下命令:

    <PropertyGroup>

    <PostBuildEvent>

    echo 准备复制"$(TargetPath)"

    call xcopy /s /y "$(TargetPath)" "$(SolutionDir)src\Magicodes.Cloud.Admin\wwwroot\PlugIns\"

    </PostBuildEvent>

     

    </PropertyGroup>

    输出:

    但是在VS的命令行编辑工具里面,这些变量应该都是有值的:

    于是我回想起来了,之前似乎就是遇到这个问题,因为时间紧迫,自己写了一个命令行工具代替了之前的命令。今天再次碰到,于是决心深挖一下,从理论上来讲,VS不应该犯这么低级的错误。

     

    • 寻找原因,解决问题

    我想,这个问题已经出现许久了,也许老外会给我一些启发。找过了stackoverflow,没发现有用的信息,不过最终在Github找到了一些有用的内容。

    比如说这篇:

    https://github.com/dotnet/sdk/issues/1055

    $(TargetPath) or $(TargetDir) are empty on PostBuild event on netstandard project

    从下面的答复中,我们看到了这条关键内容:

    大意似乎是,编译事件被target元素代替了。但是大哥,都这么久了,为啥通过项目工程的界面编辑,生成的元素还是PostBuildEvent,你们这不是坑人么。。。

    说明一点,VS界面的调整跟不上相关API和规则的调整。。。

    问题似乎解决了:

    我们再进一步完善:

    看起来需求已经实现了,理论上就可以就此结束了。但是Target是什么鬼?

     

    • 进阶

    来来来,我们直接去看官方文档:

    https://msdn.microsoft.com/zh-cn/library/t50z2hka.aspx

    突然发现这是一个很有意思的元素。文档很简单,但是我发现基于此,可以有很多玩法。

    比如你看看这篇:https://msdn.microsoft.com/zh-CN/library/3e54c37h.aspx

    那么,我们可以将上述命令进行改进:

    <Target Name="PostBuild" AfterTargets="PostBuildEvent">

    <Message Text="将插件复制到插件目录" Importance="high" />

    <Copy DestinationFolder="$(SolutionDir)src\Magicodes.Cloud.Admin\wwwroot\PlugIns\" SourceFiles="$(TargetPath)" SkipUnchangedFiles="true" />

    </Target>

    是否看起来又更进了一步。

    Import是什么鬼?请看大屏幕,哦,看链接:

    https://msdn.microsoft.com/zh-cn/library/ms171464.aspx

    copyplus.props定义如下:

    <Project>

    <Target Name="PostBuild" AfterTargets="PostBuildEvent">

    <Message Text="将插件复制到插件目录" Importance="high" />

    <Copy DestinationFolder="$(SolutionDir)src\Magicodes.Cloud.Admin\wwwroot\PlugIns\" SourceFiles="$(TargetPath)" SkipUnchangedFiles="true" />

    </Target>

    </Project>

    至此,本篇完成。

    希望本篇内容,能够给大家更多启发,并且开发出更多玩法。

    展开全文
  • InstallShield中的TARGETDIR与INSTALLDIR变量

    千次阅读 2011-07-29 14:01:10
    在用InstallShield制作安装包的时候我们经常需要用到"TARGETDIR"变量 "TARGETDIR"变量 如:我们在制作安装程序的时候需要为用户默认指定一个安装路径,基本上所有的安装包都这样来做的, 比如:我们在安装QQ的...
    
    

    在用InstallShield制作安装包的时候我们经常需要用到"TARGETDIR"变量 
    "TARGETDIR"变量  如:我们在制作安装程序的时候需要为用户默认指定一个安装路径,基本上所有的安装包都这样来做的, 
        比如:我们在安装QQ的时候默认安装路径是C:\Program Files\qq 那么我们就可以在制作安装程序的是为C:\Program Files\qq指定一个常量TARGETDIR, 当我们需要用到这个C:\Program Files\qq的地方就写上TARGETDIR就可以了。 
        另外TARGETDIR的值是可以让用户修改的,就是说用户可以自己改变安装路径。

    通常TARGETDIR是InstallScript工程中使用

    而在InstallScript MSI和Basic MSI工程中,安装路径变量是INSTALLDIR。

    展开全文
  • winform 安装包 安装路径 [TARGETDIR]

     

          在winform安装包中,路径一般情况下是用户自己通过图形界面去选择的,然后将这个路径存到注册表中,以供下次我们更新这个系统的时候用,但是有没有一种情况是安装包的路径是通过代码来控制的呢?

          有的,这几天因为项目需要写一个更新包,但是这个更新包的机制是每次更新的时候其实是重新安装了一次,这样的话在更新的过程中路径就不能让用户来选了,而是要通过注册表来获取并且代码绑定,但是我发现就算我们取得了安装路径,那么代码绑定应该在哪里写呢,由于在安装类中,当安装包执行到其中的方法时,安装的路径已经确定了(由安装包来确定),所以在安装类中更改安装的路径是不行的,我也试了下,总是报错。

           那么有一种方法就是在运行这个安装包(msi)的时候,我们给这个安装包路径加上一个参数,假设安装包的路径是:D:/项目安装包文件/HzbSystem.msi;我们希望这个安装包最后的安装到的目标路径是:D:/项目/HzbSystem/,那么我们可以在命令行中输入如图1所示:

     

    图1

           这样程序就运行到了指定的位置了,当然这里有个前提,你必须在安装包中的用户界面中删除"启动"里的“安装文件夹”框,最后如图2所示:

    图2

          这时候从安装类中获取的[TARGETDIR]就是我们的"D:/项目/HzbSystem/"这个安装路径了。

          然后要在C#代码中运行上面的dos命令就很简单了,如下,定义一个方法RunCmd(),如下代码:  

           思路就如上面,然后运行RunMsi()方法即可,上面的RunCmd方法测试过了,但是RunMsi()没测试过,当然本质上得按照每个人的需求的不同而不同。

           这个问题缠着自己三天了,终于解决了,希望给遇到相同疑问的朋友带去帮助。

    展开全文
  • TARGETDIR的值等于c:/install/,我想知道哪个关键字直接等于c:/install。 解决方法: 1.例如:TARGETDIR值为c:/install/ 2.定义一个字符串per 3.per=TARGETDIR 4.StrRemoveLastSlash(per); 5.获取per会发现
  • this.targetDir = targetDir; getSourceFiles(sourceFile, sourceFileList); // 没有java文件,直接返回 if (sourceFileList.size() == 0) { System.out.println(filePath + "目录下查找不到任何java文件"); ...
  • 图片直接上传服务器并获取路径内容:function __construct($app) { ...targetDir = 'files/upload_tmp'; $this-&gt;_targetDir = 'files/upload_tmp/yq'; $this-&gt;uploadDir = 'file...
  • targetDir = 'processedSample_includeNotSpecial/'+ srcFilesList[i] # 20个新文件夹每个的路径     if path.exists(targetDir)==False:     mkdir(targetDir)     else:   ...
  • Installshield 打包安装包心得

    千次阅读 2016-09-19 14:47:56
    一. 说明。   ...阅读对象:本人,IS的初学者。...目的: 为了让初学IS的朋友少走些弯路,虽然不是很好的宝典,但里面很多细节都是制作安装包常碰到 ...另外,也为了给自己留一些资料,方便以后查询,人的记忆力...
  • VS预生成事件命令行 和 生成后事件命令行   宏说明 ...$(ConfigurationName) 当前项目配置的...xcopy /e /r /y $(SolutionDir)1.Framework\DeviceSdk\Hs.Framework.HaiKang\HKDLL $(TargetDir)\HKDLL\  
  •  String targetDir=url2+File.separator+file[i].getName();   copyDirectiory(sourceDir, targetDir);   }   }   }  // 复制文件    public   static   void  copyFile(File sourceFile,File ...
  • .extension": ".min.css",假设当前的 Sass 文件名为style.scss,则编译输出的 css 文件名为 style.min.css "easysass.targetDir": "" // 很多情况下 scss/sass 文件和 css 文件是不在同一个目录下的,而 Easy Sass...
  • 2、指定文件保存到指定文件夹 xcopy "$(SolutionDir)\data\location.json" "$(SolutionDir)build\plugins\" /y 3、把默认生成的dll文件保存...xcopy "$(TargetDir)$(TargetFileName)" "$(SolutionDir)build\plugins\
  • targetFile = os.path.join(targetDir, file) 7 if os.path.isfile(sourceFile): 8 if not os.path.exists(targetDir): 9 os.makedirs(targetDir) 10 if not os.path.exists(targetFile) or(os.path....
  • -- sync{default.rsyncssh, source="/var/www/html", host="localhost", targetdir="/tmp/htmlcopy/"} settings { logfile = "/var/log/lsyncd/lsyncd.log", statusFile = "/var/log/lsyncd/lsyncd.status", ...
  • vscode编译sass文件

    2019-12-25 13:22:17
    settings.json中加入 "easysass.formats": [ { "format": "compressed", "extension": ".css" } ], "easysass.targetDir": "assets/css/
  • VS 程序打包/安装包制作

    千次阅读 2013-06-14 11:29:29
    在自定义操作->安装->“主输出来自Library(活动)”上面右键属性,在CustomActionData中填入/targetdir="[TARGETDIR]\", 然后在类InstallerTest中用这句话this.Context.Parameters["targetdir"] 就可以取得安装的...
  • /f /q /a $(TargetDir)a. xml del /f /q /a $(TargetDir)b. pdb rem 也可用通配符 del /f /q /a $(TargetDir)x?x*.xml 有个问题,对web项目没用,就是本地bin目录中是没了,但服务器上的bin目录会有。...
  • VS2013安装部署项目

    2016-09-04 15:41:00
    打开vs2013/2015菜单...选择此再F4显示属性,在CustomActionData中设置/targetdir="[TARGETDIR]\" ,这应该是安装目录位置。       3. 启动条件 View菜单,选择启动条件,可以把.Net Framework4.5改为4
  • python文件目录操作

    2021-04-27 22:20:56
    in os.walk(targetDir): files += filenames dirs += dirnames print(files) print(dirs) #得到目录中所有的文件和子目录名 targetDir = r’E:/Python/Files’ files = os.listdir(targetDir) print(files) ...
  • 无UI自动安装Python解释器

    万次阅读 2020-12-05 12:20:31
    0 TargetDir 安装目录 基于InstallAllUsers选择 DefaultAllUsersTargetDir 为所有用户安装时的默认安装路径 %ProgramFiles%\Python X.Y 或 %ProgramFiles(x86)%\Python X.Y DefaultJustForMeTargetDir 仅为当前...
  • vscode配置 easy sass

    2021-04-29 10:01:04
    vscode配置 easy sass 第一步:首先在vscode插件库中下载easy sass插件 第二步: 第三步: ...“easysass.targetDir”: “” "easysass.excludeRegex": "", "easysass.formats": [ { "format": "expanded
  • xcopy /Y “$(TargetDir).” "E:\sourceCode\TestProject\ExampleTest2015\DevTV-Navisworks-Plugins\DevTV-Navisworks-Plugins$(TargetName)" 如果指定文件存放位置为C盘时,需要一管理员权限打开VS软件,否则会...
  • 1 #encoding=utf-8 2 import os 3 import os.path 4 import shutil ... 6 def moveFileto(sourceDir, targetDir): 7 shutil.copy(sourceDir, targetDir) 8 9 10 target = raw_input('ta...
  • 以下是一个使用栈来实现目录以及目录下面文件和子目录的复制的例子Author:'wbing' ...def copyDir(sourceDir,targetDir): if not os.path.exists(sourceDir): #判断源目录是否存在 return if not os...
  • sass 使用(scss)

    2019-11-27 22:23:32
    "easysass.targetDir": "" //easysass.excludeRegex 提供一个文件名的正则表达式,匹配的文件会被排除,不会被编译成 css。默认为空,即该功能关闭。个人建议将一些不直接编译的文件以下划线开头命名,例如:mixin....
  • targetDir.mkdir(targetDir.absolutePath())) return false; } QFileInfoList fileInfoList = sourceDir.entryInfoList(); foreach(QFileInfo fileInfo, fileInfoList) { QString filename = ...
  • Vector3 newDir = Vector3.RotateTowards (transform.forward, targetDir, step, 0.0f); transform.rotation = Quaternion.LookRotation (newDir); transform.Translate (Vector3.forward * Time.deltaTime * ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,018
精华内容 3,607
关键字:

targetdir