If you get the «Application formatting» error, then follow these steps and it may fix the issue.
This error is often caused by a moved/renamed game folder. There are two ways to fix this:
- Rename the folder back to its original name. If this doesn’t work, or you want a new name, then try…
- Edit your Registry to the new folder name.
Open up the Registry Editor by typing «regedit» in the windows 7 search box and pressing enter.
Navigate to: «HKEY_CURRENT_USER/Software/DEV/GAME» replacing DEV with the developer name (ex: Will) and GAME with the game (ex: yumemirukusuri).
Change the «InstallDir» key to whatever your current install directory folder is and press «OK». Then just exit out of the registry editor and launch again.
Fix Source: https://forums.fuwanovel.net/topic/10445-yume-miru-kusuri-faq/
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn’t be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article
- Remove From My Forums
-
Question
-
I have successfully published several VB 2008 Express applications to my website. When I attempt to run them, the publish webpage opens and displays the following:
The following prerequisites are required:
· Windows Installer 3.1
· .NET Framework 3.5
If these components are already installed, you can launch the application now. Otherwise, click the button below to install the prerequisites and run the application.
Clicking the launch hyperlink opens the application and it runs, clicking the big RUN button below the text produces an error that says, «Cannot continue. The application is improperly formatted. Contact the application vendor for assistance.» My ClickOnce deployment uses the “Download prerequisites from the vendor’s website.” The prerequisites for this application are: “.NET Framework 3.5,” and “Windows Installer 3.1.” As I understand my MSDN education, this should work.
Previously, I published VB 2005 Express applications to my website with out this problem. When users open the application’s publiish webpage there was only a RUN button, and it worked. I’d like my ClickOnce applications to operate like it did on VB 2005.
Based on a suggestion from the VB Express forum, I modified files in the .NET 3.5 Framework, when that didn’t work I decided to uninstall and reinstall Visual Studio all the way back to the .NET Framework. After everything was reinstalled and working the ClickOnce problem was still present.
Today, I visited a user who could not RUN this application. When he attempted to RUN the application he got the same publish webpage that I did. He clicked the RUN button and got the same message that I got. When he clicked the launch link he got an ugly error message. His system only had .NET Framework 2.0. The RUN button did not install the prerequisites as it is suppose to do. After I installed .NET Framework 3.5, and clicked the launch link the application successfully ran.
For some reason my ClickOnce publishing is not working as it should. In addition to uninstalling and reinstalling all of VS, I have run VB Express as an Administrator, published a super simple, one button-one label, HelloWorld application, read and reread MSDN’s ClickOnce information, and have not been able to fix this problem. For complete disclosure you should know that my OS is Vista; the successful VB 2005 deployments were under the XP operating system. I don’t know where else to turn; you are my last hope.
Answers
-
GrandpaB & Nilkanth,
Microsoft Support did resolve my problem. Here’s what it was.
My app is called SpotLight. In Solution Explorer, if you double click My Project, and then click the References Tab, I had a Reference to SpotLight. How it got there I’m not sure. I did not put it there, but it apprently causes some kind of circular reference which caused Click Once to fail and my App to no longer run after a Publish.
To fix my problem I simply clicked on the SpotLight reference and deleted it. Problem solved.
I’m wondering if I may have created this reference by using «Add existing item». When I need to create a new form or report that is similar to an existing form or report, Visual Studio does not let you copy and paste a form to create a new form which can be modified. Thus to save time, I’ll make a copy of my Project, rename a form in the copy, and then «Add existing item» to import the form from the copied project. This saves a lot of time and seems to work, but I wonder if I created a reference to SpotLight in the process. I’ll have to do some testing to see if I can re-create the reference.
Anyone have a better way of duplicating a form or report so you don’t have to start from scratch to create a similar form?
Joe A
-
Problem Solved!!!
I talked to the tech support people at the ISP that is hosting my wedbsite and they moved my website to a server that is running ASP.NET 3.5. This seems to have solved the problem. I don’t know how this solved the problem, but for now all is well.
If you’ve experimented with GraphQL, you should be familiar that when things don’t go according to plan, GraphQL servers include an additional key errors
in the returned response:
{
"errors": [
{
"message": "Variable "$input" got invalid value {}.nIn field "name": Expected "String!", found null.",
"locations": [
{
"line": 1,
"column": 21
}
]
}
]
}
Your first instinct when planning error messaging may be to use this approach to communicate custom errors (like permission or validation errors) raised by your resolvers.
Don’t do this.
The errors
key is, by design, supposed to relay errors to other developers working with the API. Messages present under this key are technical in nature and shouldn’t be displayed to your end users.
Instead, you should define custom fields that your queries and mutations will include in result sets, to relay eventual errors and problems to clients, like this:
type_def = """
type Mutation {
login(username: String!, password: String!) {
error: String
user: User
}
}
"""
Depending on success or failure, your mutation resolver may return either an error
message to be displayed to the user, or user
that has been logged in. Your API result-handling logic may then interpret the response based on the content of those two keys, only falling back to the main errors
key to make sure there wasn’t an error in query syntax, connection or application.
Likewise, your Query
resolvers may return None
instead of requested object, which client developers may interpret as a signal from API to display «Requested item doesn’t exist» message the user in place of the requested resource.
Debugging errors
By default individual errors
elements contain a very limited amount of information about errors occurring inside the resolvers, forcing a developer to search an application’s logs for details about the error’s possible causes.
Developer experience can be improved by including debug=True
in the list of arguments passed to Ariadne’s GraphQL
object:
app = GraphQL(schema, debug=True)
This will result in each error having an additional exception
key containing both a complete stacktrace and current context for which the error has occurred:
{
"errors": [
{
"message": "'dict' object has no attribute 'build_name'",
"locations": [
[
3,
5
]
],
"path": [
"people",
0,
"fullName"
],
"extensions": {
"exception": {
"stacktrace": [
"Traceback (most recent call last):",
" File "/Users/lib/python3.6/site-packages/graphql/execution/execute.py", line 619, in resolve_field_value_or_error",
" result = resolve_fn(source, info, **args)",
" File "myapp.py", line 40, in resolve_person_fullname",
" return get_person_fullname(person)",
" File "myapp.py", line 47, in get_person_fullname",
" return person.build_name()",
"AttributeError: 'dict' object has no attribute 'build_name'"
],
"context": {
"person": "{'firstName': 'John', 'lastName': 'Doe', 'age': 21}"
}
}
}
}
]
}
Replacing default error formatter
The default error formatter used by Ariadne performs the following tasks:
- Formats error by using its
formatted
property. - Recursively unwraps the
GraphQL
error by accessing itsoriginal_error
property. - If the unwrapped error is available and the
debug
argument is set toTrue
, update the already formatted error to also include anextensions
entry with anexception
dictionary containingstacktrace
andcontext
.
If you wish to change or customize this behavior, you can define a custom function in the error_formatter
argument to a GraphQL
object:
from ariadne import format_error
def my_format_error(error: GraphQLError, debug: bool = False) -> dict:
if debug:
# If debug is enabled, reuse Ariadne's formatting logic (not required)
return format_error(error, debug)
# Create formatted error data
formatted = error.formatted
# Replace original error message with custom one
formatted["message"] = "INTERNAL SERVER ERROR"
return formatted
app = GraphQL(schema, error_formatter=my_format_error)