我遇到了一个奇怪的问题,我希望得到你的帮助。
在我的移动应用程序中,程序在SD卡上写入一个Windows C#程序(和依赖项),以便用户可以在PC上安装SD卡时在PC上运行它。 程序和依赖项将在根级别复制。
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卡运行。
请帮助,任何建议高度赞赏。
答案 0 :(得分:0)
我怀疑这与阴影有关,这是为了防止文件锁导致各种问题。
答案 1 :(得分:0)
我已经解决了这个问题。用户没有从SD卡运行它,而是使用MTP
来称为便携式设备部分