When I build my project with Unity 2017.2 it creates a 22MB ‘UnityPlayer.dll’ file on my desktop that is required to launch the game. If I delete the .dll and I try to launch the game I get a system error telling me UnityPlayer.dll is missing from my computer.
This is something I obviously do not want happening when I ship my game. What is causing this?
If you build your game via “File > Build & Run” for example, Unity copies several files to the selected output directory. In your case, I assume you selected the “Desktop” as output directory at some point.
A Windows Standalone build outputs various files and folders to the selected output directory, for example:
It is a Windows PC yes. It wasn’t creating a .dll file before though. Does this mean when I ship my game I need to ship it with this .dll? Just having my player require 3 spaces on their Desktop for a game seems a bit inconvenient.
If it works in 2017.1.1p4, but does not in a later release, then you most likely found a regression. In this case, I recommend to submit a bug-report following the advice in this document.
Using the bug-reporter seems to be an important step, because it makes sure the report is in Unity Technologies bug-tracking pipeline and has to be processed at some point. Using the forum is often used to add to a little more attention to a bug-report, but does not replace submitting the bug-report.
It’s from advantage to attach a project to the bug-report that UT can use to reproduce the issue and test their fix against. The easier an issue can be reproduced by QA, the more likely it is to get forwarded to a developer, who might or might not work on a bug-fix for that at some point.
After you submitted the bug-report, you receive a confirmation email with a Case number. UT often asks us to post the Case number in the forum thread, which allows them to find that bug-report if they look at your post.
Following these steps will increase the chance that UT is looking at your issue tremendously.
Maybe i’m wrong (and correct me if i am) but the problem with the bug reporter is that you have to upload your project, or create a test project that reproduces the issue.
The thing is, I have time to check forums about the issue, but maybe not doing QA and test repo in my working time (especially for an obvious issue like this, seen by anyone that makes a build), plus my project isn’t very suitable for an upload and test.
More of that : I saw after my bump in the release note something about this dll, now separate from others dlls. So I don’t really know if it’s a bug or a legit behaviour anymore, since there’s no communication about that (or I didn’t find it).
But i’m legit interested by submit bug without upload anything, just discribing the bug. Is that possible ?
Windows: Split the player executable into two parts: a signed UnityPlayer.dll that has all the engine code, and a wrapper executable that calls into this DLL at startup. The source code for the executable is in Editor\Data\WindowsStandaloneSupport\Source\WindowsPlayer. You can rebuild it with VS2015 as long as you have “Common Tools for Visual C++ 2015” and “Windows XP Support for C++” installed.
The thing is, do not assume that UT is going to fix a bug if you do not submit a bug-report.
Posting in the forum isn’t usually a place where UT is picking up bugs. Some UT employees actually do, but I believe that’s just because they care for their work more than others. The official way is to use the Unity Bug Reporter, which also allows you to track the issue.
I believe it doesn’t matter what project you attach to the bug-report, as long as they can use it to reproduce the issue. It could be even an empty project if it can be used to reproduce the issue.
It definitely costs more time than writing in the forum, but a forum post on the other hand most likely won’t cause UT to provide a fix.
The easier an issue can be reproduced by QA, the more likely it is to get forwarded to a developer. Attaching a project to the bug-reports rates your report as higher quality than a report without project, thus your chances that someone is actually looking at your report increases.
See here for a blog-post how to improve the chance that UT is looking at your report:
a question @Schubkraft : at the moment with unity 2017.1 I have 2 exe in the same folder, with different name and everything works fine… but if I upgrade to unity 2017.2 I suppose that something goes wrong, 'cause the dll name is the same and not depends by the project name or the .exe name…
I don’t quite get your question, sorry. But if your project/build no longer works after upgrading please do file a bug report so we can take a look at your issue. See Unity QA: Building quality with passion on how to submit an issue.
thanks @Schubkraft … I wish only undestand the new ‘dll’ that appears on build and how I need to manage in my project…
each build the dll changes or not?
The only bug is the Access Denied breaking the build if UnityPlayer.dll is locked due to another app in the same folder already running!
This is making incremental build of a gameserver and client residing into same folder with external data files major PITA since 2017.2 (I will file a bug for this later)