This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] PCS/UNIFLASH:UniFlash 3.4 v CLI,在"C:/Users..."文件夹名称中包含非ASCII符号

Guru**** 2193075 points
Other Parts Discussed in Thread: UNIFLASH
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/602445/ccs-uniflash-uniflash-v3-4-cli-on-a-pc-with-non-ascii-symbols-in-c-users-folder-name

部件号:UNIFLAASH

工具/软件:Code Composer Studio

大家好。

我在使用UniFlash v 3.4 时遇到了问题。 由于它具有命令行界面,因此它是编程控制器系列的完美程序。 感谢TI的支持。

但在某些PC (Win10)上,用户名带有西里尔符号和空格,例如“C:\Users\Alexey Popov\”或“C:\Users\Алексей Попов”。 这样,Uniflash会在尝试创建名为的文件时崩溃  
"brd_info"或smth. like。 我现在不可能给出错误文本,但我会尽快做到。

Uniflash使用以下参数调用: -CCXML %config_file_path%-core "C28"-loadSettings %Session_path%-program %C28_out_file_path%。 所有这些变量都不包含坏符号-只有英文字母没有空格。

因此问题是:是否有办法避免此问题而不使用正确的名称创建新用户? 例如,也许我可以编辑一个*。js文件,该文件能够以这种方式创建此临时配置,它将在另一个文件夹中创建此配置?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Disona,

    我们将尝试设置一个等效的环境,以找到解决方法。

    此致,
    John
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢你
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Disona,

    在运行uniflash命令之前,是否可以尝试在命令行中设置"TI_APPDATA_DIR"环境变量? 此变量控制应用程序数据的写入位置;默认情况下,它将进入用户目录。

    例如:
    >设置TI_APPDATA_DIR="c:\somewhereWritable"

    请告诉我这是否适合您或现在。

    谢谢!
    Ricky
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    刘先生,谢谢你的答复。 我试着做你说的话,它改变了一些东西,但不幸的是,它没有帮助=(

    我可以看到,该文件夹已创建,其中出现了一些文件-".lock"和文件夹".ti",其中包含一些文件,但文件夹"TI_APPDATA_DIR/ti/0/Brdat/"中的主文件丢失-此文件夹为空。

    我尝试在使用正确用户名的PC上设置此变量(之前Uniflash CLI工作正常),一切正常- ccBoard0.dat创建在"BrdDat"文件夹中,控制器编程良好。

    下面是指向错误PC上命令行输出的链接,以及带有创建的子文件夹(ti/0/0等)的".zip"文件

    e2e.ti.com/.../appdata.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Disona,

    很遗憾,我不知道为什么它仍然无法生成ccBoard0.dat文件。

    让我们尝试其他方法。 是否可以检查是否启用了8.3 文件名支持? 此处提供更多信息:

    technet.microsoft.com/.../ff62.1566万(v=ws.11).aspx

    简而言之,以admin身份打开命令行,然后运行以下命令:

    > fsutil 8dot3name查询c:

    请告诉我运行命令时打印的内容。

    谢谢!
    Ricky
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Ricky,

    感谢您的关注。 我已经在两台PC上完成了您所说的操作(工作和不工作)。 结果相同-已启用名称创建。

    由于 我们的PC上有俄语,我认为无需复制CL中的文本,我只需翻译该命令的结果。 我读出的内容类似:

    "卷状态:0 (已启用8dot3名称创建)

    注册表状态:2 (默认值 ,按卷设置)

    根据上述设置的参数,为c:"启用了8dot3名称创建

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Disona,

    仔细查看您提供的粘贴纸槽,相关行可能如下所示:

    "无法加载库C:\ti\uniflash 3.4 \CCS_bas\common\uscif\jtagdata.dll:?? ?????? ??????? ?????? 。"

    由于无法加载jtagdata.dll,因此无法生成ccBoard0.dat。 遗憾的是,错误消息以一堆问号的形式出现。

    我们可以尝试几种方法来确定jtagdata.dll无法正确加载的原因。

    1.下载“Dependency Walker”,然后在C:\ti\uniflash 3.4 \CCS_base\common\uscif\中打开jtagdata.dll。 这应提供有关是否缺少任何依赖项的信息。

    2.生成DebugServer日志。 为此,请在运行uniflash CLI之前设置以下环境变量。

    设置TI_DS_ENable_logging=1
    设置TI_DS_logging_output=c:/path/file.log

    请告诉我您是否能够运行这些测试。

    谢谢!
    Ricky
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Ricky,

    感谢你的帮助。

    我已经执行了您要求的测试,结果显示在附件中。

    在UniFlash日志中,您会发现三个西里尔文错误-не найден указанный модуль。 这意味着"未找到模块"。

    如果在打开日志时遇到问题,请尝试使用Windows-cp1251编码。

    我还在工作的PC上运行DependencyWalker来比较结果。 无论如何,我不理解这些日志中的任何内容=)

    e2e.ti.com/.../UniFlashLogs.zip

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Disona,

    从Dependency Walker日志中,看起来'Problem PC'缺少MSVCR120.DLL库。 这应该与UniFlash安装一起安装,因此我不知道为什么它会丢失。

    您使用的是哪个版本的UniFlash? 也许您可以尝试重新安装它。 您也可以尝试手动下载和安装可再发行软件包(我想这就是您需要的: support.microsoft.com/.../update-for-visual-c-2013-and-visual-c-redistributable-package)。

    谢谢!
    Ricky
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Ricky,
    它丢失了,因为我实际上没有安装UniFlash,我刚刚将UniFlash文件夹从一台PC复制到另一台PC,就像我多次做的那样。 我将尝试使用安装程序UniFlash,然后让您知道结果。 感谢您的建议。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Ricky,
    很抱歉没有这么长时间参与,我非常忙于项目。
    感谢你的帮助。 事实证明,如果已正确安装了UniFlash,它就能在该PC上正常工作,而不是像我以前那样从另一台PC复制已安装的UniFlash副本。 但在其他一些PC上,复制效果很好。 我猜问题是缺少MSVCR120.DLL,就像你说的那样。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Disona,

    很好听。 是的,如果PC已经安装了依赖项,您可以使用某个版本的UniFlash,而无需完成安装。 否则,您应完成安装过程,以确保PC上已安装所有依赖项。

    谢谢!
    Ricky