Anim8or Community

Please login or register.

Login with username, password and session length
Advanced search  

News:

Ian Ross has just released a book on Anim8or. It's perect for a beginner and a good reference for experienced users. It contains detailed chapters on every aspect, with many examples. Get your own copy here: "Anim8or Tutorial Book"

Author Topic: Saving Screen Location and Restarting in Full Screen Crashes on Win98  (Read 21712 times)

Steve

  • Administrator
  • Hero Member
  • *****
  • Posts: 2124
    • View Profile

Smirkyguy: I think I finally figured out how to make maximized windows work correctly.  It'll be in the next build.

Trevor: Remembering the line thickness setting was fixed for build 1138.  And thanks :)
« Last Edit: December 05, 2014, 08:54:17 pm by Steve »
Logged

MvGulik

  • Full Member
  • ***
  • Posts: 107
  • [... Lost in Space ...]
    • View Profile
Re: Re: Current Development Release - Build 1138, November 28, 2014
« Reply #1 on: December 01, 2014, 04:33:28 am »

Smirkyguy: I think I finally figured out how to make maximized windows work correctly.  It'll be in the next build.
XP & Vista: Anim8or(1140) crashes on start-up with Reg:WindowMaximized=1.
(when "Save Window Location" is also active.)
(Vista: No crash, but no maximized window on start-up either.)


traceinit(XP & Vista)
Code: [Select]
begin: InitInstance()
       creating main window.

*quote-fix*
*Vista correction*
« Last Edit: December 06, 2014, 08:00:25 am by MvGulik »
Logged

Trevor

  • Full Member
  • ***
  • Posts: 220
  • Goldfinger64 Dev OS:10 CPU:5960x Gfx:RX480
    • View Profile
    • LS Tech Services
Re: Re: Current Development Release - Build 1138, November 28, 2014
« Reply #2 on: December 01, 2014, 01:41:22 pm »

I can confirm that Window Maximised Crashes with:

ANIM8OR_1139 caused an invalid page fault in
module ANIM8OR_1139.EXE at 0177:004088a6.
Registers:...

the only way to fix it is to go into the registry and set WindowMaximized to 0

Trev
Logged

MvGulik

  • Full Member
  • ***
  • Posts: 107
  • [... Lost in Space ...]
    • View Profile
Re: Re: Current Development Release - Build 1138, November 28, 2014
« Reply #3 on: December 01, 2014, 01:57:52 pm »

the only way to fix it is to go into the registry and set WindowMaximized to 0
(Just start & close a older Anim8or version, that will do the trick to. ... ? ... WIP code.)

*+quote*
« Last Edit: December 01, 2014, 02:02:33 pm by MvGulik »
Logged

Steve

  • Administrator
  • Hero Member
  • *****
  • Posts: 2124
    • View Profile
Re: Re: Current Development Release - Build 1138, November 28, 2014
« Reply #4 on: December 01, 2014, 03:06:09 pm »

MvGulik: Thanks for noticing :)

Trevor: I assume this is with Win98. I have no way of testing this on Win98. Unless you have another suggestion I'll just disable automatic full screen for Win98.
Logged

Trevor

  • Full Member
  • ***
  • Posts: 220
  • Goldfinger64 Dev OS:10 CPU:5960x Gfx:RX480
    • View Profile
    • LS Tech Services
Re: Re: Current Development Release - Build 1138, November 28, 2014
« Reply #5 on: December 01, 2014, 04:14:06 pm »

Yeah, Im pretty used to it now anyway.

I did however just try a traceinit and it reveals the same info as WinXP that MvGulik posted
begin: InitInstance()
       creating main window.

I therefor assume the crash is the same as mine except that I provided the Invalid page fault text.

As for why its an invalid page fault is a mystery? and why it doesnt work in Vista?
Maybe vista is able to bypass the IPF and so skips the reg setting...???

What we could do is just continue for now and I will test each solution and fix my own reg.
If we reach a point where it is fixed for XP but 9x still fails, then we can add an exception for 9x.
I have a feeling though that we could fix both with the same solution.

As I say though, Im pretty used to the way an8 starts.

Trev
Logged

Steve

  • Administrator
  • Hero Member
  • *****
  • Posts: 2124
    • View Profile
Re: Re: Current Development Release - Build 1138, November 28, 2014
« Reply #6 on: December 01, 2014, 05:06:18 pm »

The only thing new between "creating main window" and "main window created" is that I set one extra bit in the window style parameter when creating the window:

    lStyle |= WS_MAXIMIZE;

My guess is that this bit doesn't do the same thing in Win98 or has a different value, but I can't find any good documentation on Win98 so who knows.

I'll wait on disabling this for Win98 as you suggest.
Logged

Trevor

  • Full Member
  • ***
  • Posts: 220
  • Goldfinger64 Dev OS:10 CPU:5960x Gfx:RX480
    • View Profile
    • LS Tech Services
Re: Re: Current Development Release - Build 1138, November 28, 2014
« Reply #7 on: December 02, 2014, 05:45:40 am »

I just thought id re-read the last post to make sure I didn't mis-read it myself.

"Smirkyguy: I think I finally figured out how to make maximized windows work correctly.  It'll be in the next build.


XP: Anim8or(1139) crashes on start-up with Reg:WindowMaximized=1.
(Vista: No crash, but no maximized window on start-up either.)"


Ok, So, I read this as being that lStyle |= WS_MAXIMIZE; is not working in 9x,Xp,Vista.

The thing is that I recognise that API from somewhere...

Ok, So, that API does exist in 9x despite what MS say at MSDN.
It also works the same for all OS's that use it (Apparently)

I did find that some people were having difficulty in using it but it seemed none crashed like an8 does. They simply ignored the WS_MAXIMIZED API because it wasn't called right.

Im off out so will quickly look later.

Trev

After a quick read I think something like this is whats expected. Im not sure what language your in or your implementation of it, but from what I read, a lot of people seem to have bother with it.

If RegKeyMax = true
HWND WINAPI CreateWindow(
  _In_opt_  LPCTSTR lpClassName,
  _In_opt_  LPCTSTR lpWindowName,
  _In_      DWORD WS_MAXIMIZE,
  _In_      int RegKeyX,
  _In_      int RegKeyY,
  _In_      int RegKeyWidth,
  _In_      int RegKeyHeight,
  _In_opt_  HWND hWndParent,
  _In_opt_  HMENU hMenu,
  _In_opt_  HINSTANCE hInstance,
  _In_opt_  LPVOID lpParam
);

else

HWND WINAPI CreateWindow(
  _In_opt_  LPCTSTR lpClassName,
  _In_opt_  LPCTSTR lpWindowName,
  _In_      DWORD WS_TILEDWINDOW ,
  _In_      int RegKeyX,
  _In_      int RegKeyY,
  _In_      int RegKeyWidth,
  _In_      int RegKeyHeight,
  _In_opt_  HWND hWndParent,
  _In_opt_  HMENU hMenu,
  _In_opt_  HINSTANCE hInstance,
  _In_opt_  LPVOID lpParam
);


I Should correct myself, WS_MAXIMIZE is not an API but an ENUM. It still exists in all Windows OS's though (3x -> 8)
« Last Edit: December 02, 2014, 08:58:24 am by Trevor »
Logged

MvGulik

  • Full Member
  • ***
  • Posts: 107
  • [... Lost in Space ...]
    • View Profile
Re: Saving Screen Location and Restarting in Full Screen Crashes on Win98
« Reply #8 on: December 06, 2014, 07:56:35 am »

(Vista: No crash, but no maximized window on start-up either.)
Oops.
After re-testing this one on 1140, I realized that on the Vista computer I did not have the "Save Window Location" active.

After activating the "Save Window Location" setting, Vista has the same behavior as with XP for maximized windows.
Logged

Trevor

  • Full Member
  • ***
  • Posts: 220
  • Goldfinger64 Dev OS:10 CPU:5960x Gfx:RX480
    • View Profile
    • LS Tech Services
Re: Saving Screen Location and Restarting in Full Screen Crashes on Win98
« Reply #9 on: December 07, 2014, 09:11:17 am »

MvGulik can I just confirm that you experiance the crash? Does XP/Vista give a reason? (Invalid Page Fault)
I know that Vista and 7 dont make it clear anymore. they normally just say, XXX stopped responding and will be shut down, click for solution, ignore.

It would be good to clear it up.

Trev

P.S. heh, I thought this was a completly new topic that I didnt even know I posted in, untill I realised it was a moved converstaion :P
Logged

MvGulik

  • Full Member
  • ***
  • Posts: 107
  • [... Lost in Space ...]
    • View Profile
Re: Saving Screen Location and Restarting in Full Screen Crashes on Win98
« Reply #10 on: December 08, 2014, 02:38:56 am »

I don't think in general that this data is of much use.
But here is the windows logbook data.
(Highlighted the error specific parts.)

Google Translated from NL(Dutch):
Quote
[Win XP]
Faulting application: anim8or_0.9.8.1140.exe, version 0.9.8.0, faulting module anim8or_0.9.8.1140.exe, version 0.9.8.0, faulting on: 0x000088a6.

[Win Vista]
Application error Anim8or_0.9.8.1140.exe, version 0.9.8.0, time stamp 0x5482563f, module error Anim8or_0.9.8.1140.exe, version 0.9.8.0, time stamp 0x5482563f, exception code 0xc0000005, fault margin 0x000088a6, process id 0x1d48, start time apply 0x01d012737bd44bd0.

*(Vista,An8-crash: Yep.)*
« Last Edit: December 08, 2014, 02:41:23 am by MvGulik »
Logged

Trevor

  • Full Member
  • ***
  • Posts: 220
  • Goldfinger64 Dev OS:10 CPU:5960x Gfx:RX480
    • View Profile
    • LS Tech Services
Re: Saving Screen Location and Restarting in Full Screen Crashes on Win98
« Reply #11 on: December 08, 2014, 06:29:06 pm »

Ah right yes, Access Violation, similar to Invalid Page Fault.
Both are expecting something at 0177:004088a6 (notice, yours is slightly different but this bit is the same 088a6) but can find it.

I found that 0177 is kernel32 (well, at least, from past experience of crashes)

Trev
Logged

Smirkyguy

  • Newbie
  • *
  • Posts: 21
    • View Profile
Re: Saving Screen Location and Restarting in Full Screen Crashes on Win98
« Reply #12 on: December 12, 2014, 01:55:48 pm »

i just got back after being sick, and I see that the version with fullscreen came out! i'm testing it now
Edit: it works now! thanks Steve!!! :)
« Last Edit: December 12, 2014, 01:57:57 pm by Smirkyguy »
Logged