Jump to content
The simFlight Network Forums

Mayhem

Members
  • Posts

    20
  • Joined

  • Last visited

Everything posted by Mayhem

  1. Not upset, Just like to explain myself... When i speak / type i can some/most times no make sense as i think ahead & skip words & other things like that... Have understood from the start when firsy saw FSUIPC that it was free & payware as such.. Example freeware applications supplied with out "Any" cost invloved... Simply i do not keep using software i dislike.... Unless trapped by certain requirements... eg Windows... To me most MS Software is bugware... But thats another forum & story... Just wanting to point out FSUIPC is not the package / module i was refering to as "Rip" off. For FSUIPC i have always like & more so the idea that you are willing to supply the freeware keys for people willing to contiune the use of freeware... So between your's & their time i must thank you all Anyway just to clear things up. Am not upset nor anything else about this matter... Just like to clear things up or explain things as much as i can..
  2. I cam across FSDConnect before i found FSUIPC, I had heard the name FSUIPC mention around and did'nt look into it because at the time i was trying FSDConnect and had no need to look for other software... The other modules i refer to have been other people's module made with either FSUIPC, FDSConnect or with there own methods of reading memory locations... While FSDConnect & FSUIPC are in the same market / group as one another they are more or less the same just FSUIPC being more complete. People's choice to have their software available for free or paid download are entierly upto them. When i refer to "Rip Off" i mean something that has been advertised for being able to complete or help in such task yet do not live upto there name... I do not mention names because it is simply rude to slander people's software based apon your own use & view of the operatings... I simply choose not use it & find something that fits my needs. In the end it came down to developing our own software & then it came to FSDConnect & FSUIPC. With out mention of what company & software packages i was refering to or what needs i had that needed to be filled, please dont assume that it was FSUIPC Please also note i said "Modules" not "Module" refering to more then one that i had tried. Since i have started using FSUIPC & from the "First" time i started using FSUIPC i have tried to help others where it is needed. How others view the comment is upto them same as it is upto you how you have viewed / interpreted the comment. But if others have the same view they may tell me direct or comment for them self. Tried to help people only to have them bring you down.
  3. This Did Not Imply FSUIPC, There Are Plenty Of Modules Out There http://forum.flightdecksoftware.com/viewtopic.php?t=287 I said other module's, Did not give names.... Referring to other applications & modules out there i have seen that are not worth the time.
  4. Windows flicker because of directX, Same with most games that use it... If you can get your timing right with the Application/Game then you might be lucky to "trick" the flickering effect but when timing goes out, example game lag / system lag then timing goes out & your back to the start. By grabbing a handle on the FlightSim exe / process you can get the timing right by intercepting the WM_PAINT & other *Window Messages*. But over all the only luck i have had has been to use a "Window" created within the FS2004 Application eg... Modules that call a CreateWindowEx call. Fs2004 uses a MDI interface as far as i can tell, The "World" & "Cockpit" windows are children, Why such programs work when paused because directX stops rendering... If you can create a DirectX Overlay layer then that will work... Then there are issues with flight sim loosing focus & pauseing & losing sound... With VB / C++ it would be possible to create a "Seperate Exe File" as long as it will grab a hwnd Handle on fs2004 & create a window within the fs2004 process.... There are previous post with working examples but comes down to fact fs2004 is made with directX.... DirectX must be using a an overlay, while some VB "Always OnTop" codes work... they stop working when you goto "FullScreen" Mode....
  5. Maybe re-phrase your question(s) and someone will be willing to help you with what you need or point you to a useful source of information...
  6. As far as i have seen everywhere people are saying visual basic can not be used to make dll files?? (But i do not know about vb.net) I have not bothered with trying it yet, But have wondered how a C# / C++ wrapper dll would go with being a "Controller" for the visual basic dll. Simply added/incuded (resource file) or linked to.. Would this not give the same effect as using a visual basic dll?? Could setup main interfaces & then just code the main engine / dll and re-include it to the main project each time for testing? I know is double handlering & slower but may be a quick fix for people wanting to use visual basic with FS2004 Modules.. One other note, I fould C++ easy to create a window in FS2004 (fullscreen mode) that would would always stay on top, not stop the sound & seems not to slow down the frame rate or speed of the over all game.. Since the above code i have refined it down even more, quicker & compatible.. I have been using visual basic 6 for about two years and could produce a perfect window for FS2004 when in "Window Mode", fullscreen would either disapear or flicker depending on the methods. So just for the use of FS2004 i decided to learn how to code with MS Visual C++ 6, Closest language i knew was PHP (bout 6 months) Found the standard code out there that & started with the "Menu Bar" items. After a week had a window that would work in fullscreen, no flicker.... But was focus, sound, lag, redraw & other problems... After about another week got all that sorted out & had a window that would work without any problems... that i know of... Few more days to figure out how to hide the blue "Title bar" & make it moveable by the mouse. (Changed recently to calculate movements by the mouse cursor X, Y) Anyway after reading around about vb/c#/c++/perl and so on i decided to see how quick i could get it all going... Everything i have learnt with coding has been in the last three years, never done one course or trainning. Simply looking at referenced & reading other peoples code. I dont like to copy, so i learn quickly & re-produce it to my likings.. At least that way if i do plan on making it availiable to other people there is no need to change the code. On this note i dont mind helping people who are willing to contact me via email with the question in greater detail. I can not promise answer straight away, But i love a challenge. I am willing to provide small example code that people are free to use how they wish, just as long as they dont write it off as their own.
  7. All you need todo is goto the "Project" file menu, then select "Project1 Properties" ...... "Project1" being the name of your project... Then select the "Make" tab from the top and enter your required details in below with the selected fields... I cant remember which goes where, just know when i did use visual basic i used this method.... Remember you cant "run" your project and expect it to work, You "Must" compile it to the ".exe" file. If you run it from visual basic, it will run under the "Visual basic, vb6.exe" name and this is different to your key... That should be all that is needed??? Been while since i've delt with the visual basic app register stuff...
  8. We need to know / see what you have tried to read??? VarPtr i think means "Variable Pointer"? Not to sure, i just use it.... Call FSUIPC_Read(&H570, 8, VarPtr(varTest), varResult) Call FSUIPC_Process(varResult) the above code will read & store the aircrafts altitude into the variable varTest This variable "varTest" is dimmed as a "Currency" type as it requires a decimal point.. the "varResult" is used to queue the commands / reads / writes.... the FSUIPC_Process is used to send / process that queue. In general when using a new offset for the first time i will start with a "Long", then a "Double", then a "Currency", Then a "String" followed by other combinations... As pointed out the VB documentation for FSUIPC, the currency datatype is perfect for reading in the latitude / longitude..... when testing i generally place the following type of code in a command button for simple testing... Call FSUIPC_Read(&H570, 8, VarPtr(varTest), varResult) Call FSUIPC_Process(varResult) Msgbox varTest If you post a particular problem i'm sure someone will be willing to help with an answer. Hope this helps??
  9. create a window..... not dialog....... using the WNDCLASSEX..... have used this myself & does not pause flight sim.... on any event use "SetActiveWindow" to focus back flight sim. this will allow u to have an always on top window.... works "sweeeeet" email at the address below if you want a little more help... this was a hard code to crack... so not just gonna post for example on here....... Willing to guide ppl tho... i think i posted abit about this in a post i created on here going back a few months.... titled "Module Code DLL / Window ............Source Code" has what u need if you know what your doing... is on "Page 3" http://forums.simflight.com/viewforum.php?f=54&topicdays=0&start=100
  10. If i aint working on a project, then at least something like this is putting my brain to use... always glad to help when i can
  11. Just been reading over these forums post again and seems people will try once or twice to solve the problem & then wait for an answer... It is not learning unless you find out for your self how & why it is not doing what you want it to do??... I may be different to others in this area but if i come across a problem, I will spend hours & hours until i crack it... That way next time something similar comes along, I've got more of an idea & head start..... This alone helps in learning Visual C++ 6.... (Damn MS Products) There updates are just fixing problems that there previous updates put there.... Is why people who dont update dont have problems.... Some times... Anyway, All i can say is it dont hurt to keep on trying... May seem like hours of work & time wasted, But if you can crack it rather then have someone tell you what todo "Copy n Paste"... Then you know your time was'nt wasted.... Have seen how much time pete spends on replying to simple post with questions that are already answered or are documentated. Once again,,, just my 2 cents.
  12. Change this: FSUIPC_Read(&0AEC, 2, VarPtr(numbersOfEng), dwResult) To this: Call FSUIPC_Read(&H0AEC, 2, VarPtr(numbersOfEng), dwResult) when you goto a new line or finish the "call" it will correct it to "&HAEC" basiclly when entering "any" offset type &H in front of it... this will "auto" correct & remove the "0" in front if needed.....
  13. This is of only a personal view..... Under the windows / ms dos operation systems it would seem "Logical" not to use more then one "Decimal" in anyfile name considering the usual method is the "Decimal" determains the starting point of a "extension" of the file.... maybe reads last decimal but..... ( certain applications save from the first decimal and others from the end and a few just anywhere in the middle...... (Comes down to the developer/code).... If your methods have been working for years then your methods seem to not follow along reconised guide lines for such "Problems" that can arrise.... You maybe able to code something to work with "The Last Decimal" as the starting point for an extension or any other use..... But would'nt it make sense just to stick to guide lines....??? Make it compatible & expandable ----- My Personal View ----
  14. Myself am also a night owl... Simply more quiet & allows more work to be done with less time... Tho dont help with full job during day.... Love the Coffee :shock: Have looked around at other forums and think i know of the one that you mean.. Just this forum seems tobe better related to the projects i am currently invloved in. I will continue to post code/work/examples up here along with anything else i think might be of use to people... I just work better with a challenge... So if ppl request it, i get it done or else i never finish an example/project,,,,, "True work of art is never complete" Anyway back to the code.... Is where my mind belongs.... Thanks for you reply pete, And more so thank you for this useful / time saver interface module ***Also Side/Bottom Note: **** Anyone who is wanting help with visual basic also msg me if you like, Before my attempts at C++ i started with visual basic & was successful with various area's of thatSuch as GPS tracking via Lat/Long uploaded to a website & viewable by others...
  15. If i dont recieve any feedback then might as well cease this post......
  16. Okay to display a window there a few steps you need todo, Some/All of them may vary with how you want the window to work.... First of all you need an event to call / create the window... Most examples of modules will generally be the "Menu Bar" option. Example, FSUIPC from "modules". Now the best method i have found for creating a window that will always stay ontop in fullscreen or windowed mode is using a WNDCLASS / WNDCLASSEX WNDCLASSEX wc; wc.cbSize = sizeof(WNDCLASSEX); wc.style = CS_VREDRAW | CS_SAVEBITS | CS_OWNDC | CS_HREDRAW; wc.lpfnWndProc = WndProc; wc.cbClsExtra = 0; wc.cbWndExtra = 0; wc.hInstance = hMyWindow; wc.hIcon = LoadIcon(NULL, IDI_APPLICATION); wc.hCursor = LoadCursor(NULL, IDC_ARROW); wc.hbrBackground = (HBRUSH)(cBlackBrush); wc.lpszMenuName = NULL; wc.lpszClassName = g_szClassName; wc.hIconSm = LoadIcon(NULL, IDI_APPLICATION); RegisterClassEx(&wc); The above code will create a window class/pointer stye variable... wc ***Remember i've only just started c++ so dont know names of stuff*** Next we want to create a window with a handle using the above *wc* if (!IsWindow(hWndDialog)) { hWndDialog = CreateWindowEx(WS_EX_TOPMOST, "clsName", "My Window", WS_VISIBLE | WS_POPUP, 30, 30, 233, 179, hFSimWindow, NULL, hMyWindow, NULL ); ShowWindow(hWndDialog, SW_SHOW); } The above code will create & show the window if it already has'nt been done so. *****Above the first section of code you must also create a standalone void/function thingy to handle the window's messages.....***** ***So Insert The Code Below **Above** The Other Two Lots Of Code*** LRESULT CALLBACK WndProc(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) { switch(msg) { case WM_CLOSE: { DestroyWindow(hwnd); } case WM_DESTROY: { PostQuitMessage(0); } default: return DefWindowProc(hwnd, msg, wParam, lParam); } return 0; } The main trick to all of this is that this will create a stand-alone window with it's own message loop as such.... i think... still learning the workings.... So now with a widow created within flightsim as part of it's own "Main Process" & has it's own handle.... "hWndDialog " ***The other thing todo is to declare all of the variable's / types, & includes.... If i have missed anything or anythign is incorrect the please msg/email me or post a reply with the problem/description & i will update this... Reason i have not attached or given the "Complete Example Module" DLL Source code is because at this stage of coding i beleive if u cant create it with the above snippets of code then there is no point in reading or coding in this area of Flight Sim....... My own personal view.....Plus i am still playing around with this code. Hopefully this can be of some more help....
  17. With out ppl need or posting questions & code... Wont be able to have a challenge.... If you need help then please post a question & i will see if i can be of help...... Have'nt had the time i expected when comes to updating this page/post... So when i can i shall post more here, Been thinking bout time tutorial was released in regards to FSUIPC & C++... .... Anyway just saying if u want code produce, Produce some questions....
  18. Below is a another way to create a menu with in the the flight sim callback procedure...... Declare in header area.... HMENU hMenu, hMyMenu; #define MENU_ENTRY "MyMenuItem" Place/Use in callback Procedure case WM_NCPAINT: { if (!IsMenu(hMyMenu)) { hMenu = GetMenu(hwnd); hMyMenu = CreateMenu(); AppendMenu(hMenu, MF_STRING | MF_POPUP, (UINT_PTR)hMyMenu, MENU_ENTRY); } } Attached is a copy of this code in use witha simple flight sim handle simplemenu.zip
  19. //INCLUDE OUR USUAL GAUGE HEADER FROM FLIGHT SIM SDK #include "gauges.h" //THIS WILL TELL FLIGHT SIM THAT WE ARE A COMPATIBLE MODULE/DLL void FSAPI module_init(void){} void FSAPI module_deinit(void) {} GAUGESIMPORT ImportTable = { { 0x0000000F, (PPANELS)NULL }, { 0x00000000, NULL } }; GAUGESLINKAGE Linkage = { 0x00000001, module_init, module_deinit, 0, 0, 0x900, NULL }; //ENTRY POINT OF OUR DLL FILE..... BOOL APIENTRY DllMain (HANDLE hModule, DWORD ul_reason_for_call, LPVOID lpReserved) { return TRUE; } The above code will work with flight sim & stop the "Unknown" module from appearing when you start flight sim....... Note this code will not get a handle on flight sim or anything like that... Just enables flight sim to use this module and thats it... Seems there is little help around for modules with flight sim and with hunting around for code related for projects we are currently working on i figured bout time someone started posting proper examples........ So the above is my first, later tonight or some time soon i will return & post more...... Just a hint for ppl wanting to work with modules.... Look inside of the "Gauge.h" include header as this is how it talks to flight sim... Anyway wont explain much but this now.. Next lot will be examples and so on... Note: I've been a self taught programmer for a few years and started C++ one week ago.... :( So as i find out more i shall share... If you have any questions.. Feel free to contact me. ******If any of the above code is wrong or something, please post so i can correct it***** bare required.zip
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use. Guidelines Privacy Policy We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.