the compiler doesn't compile the script

Started by
28 comments, last by brightening-eyes 10 years, 4 months ago

i've compiled it on windows7 32 bit

it must be worked!

why it can't be executed?

i'm going to search and tell you!

when you can't see well like me, you can't test your applications and you can't read something

Github

Advertisement

go to the control panel,

select user accounts,

then select change user account control settings

after that you see a slider

turn it to 0% and press OK

when asked a question, select yes and press OK in all of the dialogs that happens and close control panel

when you can't see well like me, you can't test your applications and you can't read something

Github

I feel like running a random exe that requires UAC to be disabled is a terribly unsafe thing to do.

While I agree with Jake that you must not require the users to disable UAC in order to run your software, I trust that you haven't provided any malicious software and did try it with UAC turned off. However, the result is the same after telling Windows to execute the application even though the supplier is unknown Windows gives me the error that the application cannot be executed on this PC without any further detail about why.

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

I had a quick look at the exe - coz I'm so nosey and enjoy mystery .exe's smile.png it's a legit PE, I didn't check for any nasties but it's:

"Allegro Game Creator"

uses:

OpenAL

wxWidgets

OpenGL

some GCC stuff

and a few more

probably doesn't load because it uses a few .dlls

libgcc_s_dw2-1.dll

libgcj-13.dll

and it does have that function above in there:

int __thiscall sub_401838(void *this, int a2)
{
int v2; // ebx@1
int v3; // ebx@6
int v4; // eax@6
int v5; // ebx@16
void (__thiscall *v6)(_DWORD, _DWORD, _DWORD); // ebx@16
void *v8; // [sp+44h] [bp-16Ch]@1
char v9; // [sp+48h] [bp-168h]@4
char v10; // [sp+100h] [bp-B0h]@4
char v11; // [sp+108h] [bp-A8h]@1
char v12; // [sp+114h] [bp-9Ch]@1
char v13; // [sp+120h] [bp-90h]@1
char v14; // [sp+12Ch] [bp-84h]@1
char v15; // [sp+138h] [bp-78h]@1
char v16; // [sp+144h] [bp-6Ch]@6
char v17; // [sp+150h] [bp-60h]@10
char v18; // [sp+15Ch] [bp-54h]@16
char v19; // [sp+168h] [bp-48h]@16
char v20; // [sp+174h] [bp-3Ch]@16
int v21; // [sp+180h] [bp-30h]@16
int v22; // [sp+184h] [bp-2Ch]@14
int v23; // [sp+188h] [bp-28h]@12
int v24; // [sp+18Ch] [bp-24h]@4
int v25; // [sp+190h] [bp-20h]@1
int v26; // [sp+194h] [bp-1Ch]@1
v8 = this;
sub_90112C(&v11);
sub_901210("Executable Files(*.exe)|*.exe");
sub_9008CC("compile");
sub_9008CC(&unk_9EE184);
sub_9008CC(&unk_9EE184);
sub_9008CC("compilesavedlg");
v2 = sub_98D050(576);
sub_4F5E00(v8, &v12, &v13, &v14, &v11, 6, &dword_C3CB04, &dword_C3CAFC, &v15);
v26 = v2;
sub_9011C0(&v15);
sub_9011C0(&v14);
sub_9011C0(&v13);
sub_9011C0(&v12);
v25 = (*(int (__thiscall **)(int))(*(_DWORD *)v26 + 956))(v26);
if ( v25 == 5101 )
sub_4E3A32(0);
if ( v25 == 5100 )
{
sub_8B2DE8(&v10);
sub_799F20(&v9);
v24 = sub_79ADD0(dword_C37024, "build");
if ( v24 >= 0 )
{
v3 = sub_4FB696(*((_DWORD *)v8 + 122));
sub_4FB5CA(*((_DWORD *)v8 + 122));
v4 = sub_92B2E0(&v16);
v24 = sub_79C5C0("sec", v4, v3);
sub_9011C0(&v16);
if ( v24 >= 0 )
{
v24 = sub_79D9D0(&v9);
if ( v24 >= 0 )
{
(*(void (__thiscall **)(char *, int))(*(_DWORD *)v26 + 1024))(&v17, v26);
v24 = sub_8B2D50(&v17);
sub_9011C0(&v17);
if ( v24 >= 0 )
{
v23 = (*(int (__thiscall **)(int, _DWORD, _DWORD))(*(_DWORD *)dword_C37024 + 196))(dword_C37024, "build", 0);
if ( v23 )
{
v22 = (*(int (__thiscall **)(int, _DWORD))(*(_DWORD *)v23 + 52))(v23, "void main()");
if ( v22 )
{
sub_4E3A32(1);
sub_9008CC("compiling");
sub_9008CC("please wait while the script is being compiled");
v5 = sub_98D050(588);
sub_504D58(&v18, &v19, 100, v8, 6);
v21 = v5;
sub_9011C0(&v19);
sub_9011C0(&v18);
(*(void (__thiscall **)(int, char *, _DWORD))(*(_DWORD *)v23 + 168))(v23, &v10, 0);
v6 = *(void (__thiscall **)(_DWORD, _DWORD, _DWORD))(*(_DWORD *)v21 + 1000);
sub_900B20(off_9E5488);
v6(v21, &v20, 0);
sub_9011C0(&v20);
}
else
{
(*(void (__thiscall **)(int, char[4], _DWORD, _DWORD, _DWORD, _DWORD))(*(_DWORD *)dword_C37024 + 24))(
dword_C37024,
"sec",
0,
0,
0,
"your script must have Void Main() function");
}
}
else
{
(*(void (__thiscall **)(int, char[4], _DWORD, _DWORD, _DWORD, _DWORD))(*(_DWORD *)dword_C37024 + 24))(
dword_C37024,
"sec",
0,
0,
0,
"can't load the compile byet code");
}
}
else
{
(*(void (__thiscall **)(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD))(*(_DWORD *)dword_C37024 + 24))(
dword_C37024,
"sec",
0,
0,
0,
"can't Open the given file for compilation!");
}
}
else
{
(*(void (__thiscall **)(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD))(*(_DWORD *)dword_C37024 + 24))(
dword_C37024,
"sec",
0,
0,
0,
"unknown error!");
}
}
else
{
(*(void (__thiscall **)(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD))(*(_DWORD *)dword_C37024 + 24))(
dword_C37024,
"sec",
0,
0,
0,
"can't get the script!");
}
}
else
{
(*(void (__thiscall **)(_DWORD, _DWORD, _DWORD, _DWORD, _DWORD, _DWORD))(*(_DWORD *)dword_C37024 + 24))(
dword_C37024,
"sec",
0,
0,
0,
"can't start compilation");
}
sub_8B1590(&v9);
sub_8B2E30(&v10);
}
return sub_9011C0(&v11);
}

what should i do now?

i read all of them, but it didn't worked!

thank's shabronic for the information, but i don't know how to fix it!

i dis-assembled it, but nothing happens and i don't found the problem

now see that!:

i can write an operating system, but this application make's me very snappish

please help: i'm losing my eyesight for that!

when you can't see well like me, you can't test your applications and you can't read something

Github

Windows used to give more information about why an application doesn't run. Especially when it is because of a missing dll. Perhaps Microsoft decided to remove this error reporting in Windows 8 due to confusing the average user. I wonder if there is a way to turn on the detailed error reporting for us developers? I'll see if I can find something.

Anyway, I'll try downloading the dlls that shabtronics mentioned and see if that helps.

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

I downloaded Dependency Walker to see if there were any other missing dlls.

The dlls that are missing seems to be from Microsoft. My guess is that you're using a different version of the Platform SDK than what I have installed.

What version of the Platform SDK is it that you're using?

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

No, that had nothing to do with the problem. I ran dependency walker on my own application BMFont, and it reports the same missing dlls, yet my application runs normally.

There is something in AGC.exe that prevents it from running. Could it have been corrupted, e.g. by ftp as text, in the upload to your site? Have you tried downloading the executable and running it on your own machine?

AngelCode.com - game development and more - Reference DB - game developer references
AngelScript - free scripting library - BMFont - free bitmap font generator - Tower - free puzzle game

I think that posting your executable for debugging should really be a last resort when you're trying to get help like this.

You should really try to create a minimal program that demonstrates the essential problem. Check out a fresh working copy from version control, or copy your project's source if you're not using version control (hint: you should definitely be using version control). Start by removing third party code, and keep removing more and more code while checking that the application continues to reproduce the unwanted behaviour. Try to avoid any external dependencies, for example, try putting the script source code in a string rather than an external file (presuming Angelcode supports reading a string directly).

Stop when the behaviour does, or when there is no more code to take away.

Sometimes, in the process of reducing the problem you will actually find the source and be able to solve it yourself. In such cases, it would be nice to reply with a note here, so that others experiencing similar issues know what to look out for. During this process, you might also find that trying to remove a piece of otherwise unrelated code also removes the behaviour. This may indicate trickier issues, such as invoking undefined behaviour, For example, somewhere you might be calling a member function on a null, uninitialised or deallocated pointer. If you find this, you at least can (probably) rule out Angelcode as the culprit.

Another possibility is that you end up with a relatively simple program, that fits in a single source file, with no external dependencies, that still shows the issue. Post the code to this program here, someone might be able to spot a mistake, or it could be used as a test case to demonstrate a bug in the library itself.

This topic is closed to new replies.

Advertisement