Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

Cześć, chciałbym się dowiedzieć czy istnieje możliwość narysowania konsoli DOS'u w oknie GM'a z bibliotekami lub bez, słyszałem o FreeDOS ale odpada, nie mogę odszukać jakiegoś poradnika.

Chodzi o to aby DOS był widoczny w tym oknie. Co poradzicie?

 

PS: Oglądałem ten temat też.

Opublikowano

Chcesz zrobić emulator DOS'a, czy odpalić commandline?

 

Z tego co wiem to chyba niemożliwe, pamiętam DLL, który odpalał równolegle cmd, ale tego pewien nie jestem

 

Fervi

Opublikowano

Tyle że mu chodzi o rysowanie w oknie GM'a, a z tym może być problem, można by napisać dll który by miał własne, niewidzialne okno, i był pośrednikiem strumieni i/o.

Opublikowano

Pasowała by mi każda możliwa - wasza opcja. Już nieraz zajmowałem się C++, chodzi tu o wyświetlanie informacji dosowych coś na zasadzie chatu, z tego co sie orientuje opcja Utermiko i ediepl by pomogła, znam funkcje na operowaniu dosem ale nie mam pojęcia o Frameworku. Bardzo bym był wdzięczny, za każdą pomoc.

 

Co do Fevi:

To połączyć to z tym, bo DOS ma funkcje takie, których GM nie ma, a nie chciałbym aby okno się chowało ale było widoczne w game makerze. Nie wiem od czego zacząć, aż głowa mnie boli jak się zastanawiam.

Opublikowano

W sensie chodzi mi o to, że napiszę dll'a ale żeby go odpalić to użytkownik musi mieć zainstalowany .NET Framework.

 

Ty będziesz musiał tylko wyświetlać tekst który zwróci wiersz poleceń (np. przez draw_text) czyli scrollowanie itp. musisz sobie sam napisać.

Opublikowano
W sensie chodzi mi o to, że napiszę dll'a ale żeby go odpalić to użytkownik musi mieć zainstalowany .NET Framework.

 

Dziś można tak powiedzieć że prawie każda aplikacja działa na NET, praktycznie każdy użytkownik to ma, gorzej by było z OpenGL. Byłbym wdzięczny jeśli Utermiko by tobie nie sprawiło to większych problemów. Pisanie DLL jest na wysokim poziomie niestety. "Dla mnie" kto pisze DLL'e jest bardzo dobrym programistą.

Opublikowano

Masz dll'a: https://gmclan.org/up8194_3_dogmdos.html

W środku przykład gm 8 i 8.1, skrypty i dllki.

 

cmd_init(); //odpalasz konsolke
cmd_write(komenda); //wpisujesz komende do konsolki
cmd_read(); //czytasz co konsola zwrocila, najlepiej umiescic to w step. zwraca stringa
cmd_free(); //zamyka konsolke i zwalnia dll

@EDIT Wymaga .NET Framework 4

 

@ediepl Łap source: http://pastebin.com/28pqJAkp.

Napisane w c#.

Opublikowano
Hmm, wejdź w Configuration Properties -> C/C++ -> Code Generation i w zakładce Runtime Library zmień na Multi-threaded (/MT), powinno zadziałać.

 

error D8016: '/clr' and '/MT' command-line options are incompatible

Niestety w c++/cli nie da się :(

 

@EDIT Wyjaśnienie

If you are using the /clr compiler switch, your code will be linked with an import library, msvcmrt.lib. The import library references a new library, msvcm80.dll, which provides a proxy between your managed code and the native CRT. You cannot use the statically linked CRT ( /MT or /MTd options) with /clr. Use the dynamically-linked libraries (/MD or /MDd) instead.

W skrócie: msvcm80.dll jest przejściówką pomiędzy kodem zarządzanym a nie zarządzanym.

 

@EDIT2 Spróbuj dać te dll'ki: https://gmclan.org/up8194_3_dlle.html

Opublikowano

Przepraszam że się wtrącam ale to w jaki sposób się komunikujecie mnie przeraża. (Binarce, Code, Konfiguracje, Dlle ) omg70% tych dialogów to jak chińczyk i ja :) Zobacze czy da się coś wykąbinować, cały czas mysle i "niczym" tworze.

 

@Edit: dodałem dodatek to tego dll'a dosowego - taki slide room co się myszką przesuwa, to zastąpi scrool lock, zobacze co wyjdzie dalej z wpisywaniem komend

Opublikowano

Mam się rozumieć, że działa tak?

Ten przykład robiłem na szybko żeby tylko pokazać jak to mniej więcej wygląda.

 

Kiedyś zrozumiesz to wszystko :P Dla mnie kiedyś to też była czarna magia.

Opublikowano

A masz wgranego .Net Framework ? Utermiko zrobił na tą wersje. Mi działa doskonale i jestem tobie Utermiko wdzięczny za to :) Dzięki tez ediepl za ogromne chęci i docenie to na przyszłość. Pozdrawiam, temat ciągle aktualny jest bo moze sie duzo zmienic jeszcze

Opublikowano

@ediepl Być może, bo kompiluje przez vs 2012. Jak masz VS 2010 to możesz spróbować skompilować u siebie jeśli masz czas.

Source: https://gmclan.org/up8194_3_DotNetGMCrossoversrcvfram40.html

 

@FanXX Jaką masz wersję visual c++ redistributable?

 

@EDIT Przecież redisty 2012 działają na XP, niżej link.

 

Także jeśli chcesz aby u kogoś innego odpaliło to musi mieć zainstalowane:

Visual C++ Redistributable for Visual Studio 2012 Update 1

.NET Framework 4

Opublikowano

Chodzi mi o to, że DOS != Komendy CMD

 

Robiąc emulator DOS powinieneś w zasadzie emulować CPU, tudzież odpalać (ale to gorsza możliwość) przez CMD, a Linia Komend jest wbudowana w Windowsa i nie jest DOS'em (chociaż w jakiś sposób nawiązuje do niego)

 

Fervi

Opublikowano

Microsoft Visual C++ 2010 Redistributable Package (x86) posiadam obecnie oraz DevC++ i GM 8 Pro

 

Nie wiem tylko czy przy emulacji DOS nie będą problemy u innych przy słabszych komputerach. A te małe laptopy będą mieć przechlapane.

Opublikowano
Jak przeszkadza Tobie wymóg .Net lub redistra to mogą wstawić moją wersję.

 

Mi odpowiada każda propozycja, posiadam programy do tego a jeśli trzeba mogę wyposażyć się w coś lepszego.

PS: Programowanie to moje zajęcie na codzień, tylko ciężko mi to wchodzi

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...