从SD卡运行C#程序,但显示它从临时目录运行
本文关键字:运行 显示 SD 程序 | 更新日期: 2023-09-27 18:34:28
我遇到了一个奇怪的问题,我想得到你的帮助。
在我的移动应用程序中,该程序在SD卡上编写Windows C#程序(和依赖项(,以便用户可以在PC上安装SD卡时在其PC上运行它。程序和依赖项像这样在根级别复制。
- 我的程序.exe
-
myprogram.exe.config [仅供参考:config 具有运行时绑定和库文件夹]
-
Libs''Interop.iTunesLib.dll
我收到了来自此类用户的错误报告。我无法在我这边重现这个
OS Version: Microsoft Windows NT 6.1.7601 Service Pack 1
Assembly version: 1.0.0.0
CurrentDirectory: C:'Users'yasd'AppData'Local'Temp'WPDNSE'SID-{10001,SECZ9519043CHOHB,4820242432}
Problem: Could not load file or assembly 'Interop.iTunesLib, Version=1.11.0.0, Culture=neutral, PublicKeyToken=null' or one of its dependencies. The system cannot find the file specified.
现在我看到的问题是我在报告中得到的程序的当前目录是
"C:'Users'yasd'AppData'Local'Temp'WPDNSE'SID-{10001,SECZ9519043CHOHB,4820242432}"
我期待它是这样的
F:'
因为用户从SD卡的根目录而不是Windows的临时文件夹上运行它。
我的评估是,由于此路径是错误的,因此无法加载依赖程序集,
如果从SD卡运行,为什么某些东西会进入C#中的临时目录???我问用户他没有从SD卡复制任何文件并从SD卡运行。
请帮忙,任何建议都非常感谢。
我怀疑这与阴影有关,这是为了防止文件锁定导致各种问题。
我已经解决了。用户没有从SD卡运行它,而是使用MTP的便携式设备部分