Перейти к содержанию
Old Phone Forum
  • Вход

    Вы сейчас не залогинены на форуме.

    Для возможности комментариев, загрузки файлов, подписок на ответы - вам надо войти.

Java Midlet Program (jmp) By Jeeb


Рекомендуемые сообщения

Баги пофиксил. Перезалил. Прошу простить меня... Качайте в первом посте...

--- Модели телефонов

Siemens ME45 -> Samsung SGH-X100 -> Samsung SGH-X700 -> Samsung SGH-E200 (Titan Gray) + 512MB -> Nokia 6500 Classic (Black)

--- Контактная информация

ICQ: 2-677-776

--- Вклад в развитие форума SGH.RU

Java Midlet Program by Jeeb - программа для работы с Java-приложениями и играми Samsung (добавление поддержки русского ввода, адаптация, создание Jad и пр.)

--------------------

Ссылка на комментарий
Поделиться на другие сайты

Еще раз хочу поблагодарить автора, прога нужная, хотя и простая, попал в точку, молодец :) Особенно радует оперативность, так держать :ad:

 

Теперь пожелания:

1. хотелось бы иметь возможность добавлять свои строки в манифест(для удобства можно прицепить краткий справочник ключей), и еще можно было-бы редактировать манифест прям в окне "информация manifest.mf"

и еще пара мелочей:

2.

ВНИМАНИЕ: Пока не завершилась загрузка одной партии файлов в программу, вторую партию не загружать!!!

 

так запрети это :)

 

3. И еще мелочи по интерфейсу: добавь пожалуйста хинты к кнопкам

 

4.Сделай путь по умолчанию папки output в корне с программой,т.е. Installdir\JMP 1.4.1\Output\ а то D:\Sorted\Delphi\Source\Delphi 7\JMP 1.4.1\Output\ - это очень уж сложно

 

5. Если не лень - то можно инсталятор сделать

 

Спасибо :71:

 

Еще баг заметил: первые строки в пятой, шестой и восьмой колонках, т. е. cyr, sam и jad - активные, исправь пожалуйста - это расплата за оперативность :)

Изменено пользователем sob@k@

Йа вернулсо!

Ссылка на комментарий
Поделиться на другие сайты

sob@k@,

спасибо...

 

1. Думал над этим... Честно: забыл сделать...

2. Подумаю... Или подумаю над тем чтоб можно было не запрещать...

3. Будет сделано

4. Честно: Забыл... Когда баг исправил, путь поменять..

5. SFX сделаю...

 

про последний баг: не понял...

--- Модели телефонов

Siemens ME45 -> Samsung SGH-X100 -> Samsung SGH-X700 -> Samsung SGH-E200 (Titan Gray) + 512MB -> Nokia 6500 Classic (Black)

--- Контактная информация

ICQ: 2-677-776

--- Вклад в развитие форума SGH.RU

Java Midlet Program by Jeeb - программа для работы с Java-приложениями и играми Samsung (добавление поддержки русского ввода, адаптация, создание Jad и пр.)

--------------------

Ссылка на комментарий
Поделиться на другие сайты

про последний баг: не понял...

 

Вот, что имел ввиду, если кликнуть на выделенные ячейки, то их содержимое удалится или поменяется на "+", они ведь должны выполнять роль заголовков?

63289-26-06-07)1182839305_thumb.jpg

Вот щас подумал, было бы здорово, если бы при нажатии на эти заголовки, в данной колонке все строки становились бы "+" и наоборот, т. е. можно было-бы всем играм из списка поставить действия jad например.

 

Тепер понятней? ;-)

Йа вернулсо!

Ссылка на комментарий
Поделиться на другие сайты

Вот щас подумал, было бы здорово, если бы при нажатии на эти заголовки, в данной колонке все строки становились бы "+" и наоборот, т. е. можно было-бы всем играм из списка поставить действия jad например.

+1. Было бы неплохо, чтоб при нажатии на заголовок колонки добавлялись бы + во всех строках или убирались бы

Нет данных

Ссылка на комментарий
Поделиться на другие сайты

было бы здорово, если бы при нажатии на эти заголовки, в данной колонке все строки становились бы "+" и наоборот, т. е. можно было-бы всем играм из списка поставить действия jad например.

вот и я об этом же!!!!

 

Сделай пожалуста пристыковку к краям экрана - программа увеличилась в окне и с разрешением 800*600 уже не помещается на экране. Или покомпактней форму сделай... Вобщем кнопку выбора папки для выходных файлов не видно...

хм... хз...

Ссылка на комментарий
Поделиться на другие сайты

 
procedure AddFileMenue(FilePrefix, Menue, Command: string);
var
 reg: TRegistry;
 typ: string;
begin
 reg := TRegistry.Create;
 with reg do
 begin
RootKey := HKEY_CLASSES_ROOT;
OpenKey('.' + FilePrefix, True);
typ := ReadString('');
if typ ='' then
begin
  typ := Fileprefix + 'file';
  WriteString('', typ);
end;
CloseKey;
OpenKey(typ + '\shell\' + Menue + '\command\', True);
WriteString('', '"'+command + '" "%1"');
CloseKey;
Free;
 end;
end;

 

вот это процедура добавления контекстного меню... может пригодится... правда добавится без иконки..чтобы сделать с иконкой как WinRar стучи в асю... помогу..там чуть сложнее...

 

Ну а вызывать эту функция надо напрример так...

AddFileMenue('jar','Обработать с помощью JMP',application.ExeName);

 

Да.. забыл сказать.. имя файла при выборе пункта меню передается программе в качестве параметра..

Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Ссылка на комментарий
Поделиться на другие сайты

Извиняюсь я опять со своими хотелками но насчет меню вот еще

Да простит мне администрация

 

Вот код добавления пункта контекстного меню как делает это WinRar

Добавление пункта в контекстное меню Windows Explorer
// Откройте Delphi, выберите в меню New... Dynamic link library
// Скопируйте нижеприведенный текст DLL 
// Скомпилируйте проект.
// Теперь нужно зарегистрировать полученную библиотеку.
// Наберите в командной строке regsvr32.exe sendtoweb.dll 
// После этого откройте Windows Explorer и вы увидите новый 
// пункт меню...  

unit Sendtoweb; 
// Author C Pringle Cjpsoftware.com 
{ Реализация COM объекта расширения оболочки Windows Explorer. Этот 
 COM объект способен перенаправлять запросы компоненту TPopupMenu. Компонент   TPopupMenu должен находиться  на форме MenuComponentForm. 
 Вы можете модернизировать код для большей гибкости. 
 Компонент TContextMenu регистрируется как  глобальным обработчик контекстного меню.
 Это достигается модификацией ключа реестра  
 HKEY_CLASSES_ROOT*ShellExContextMenuHandlers. 
 jfl 
} 

interface 
uses Classes, ComServ, ComObj, ActiveX, Windows, ShlObj, Interfaces, Menus,   ShellAPI, SysUtils,registry; 

type 
 TContextMenuFactory = class( TComObjectFactory ) 
 public 
procedure UpdateRegistry( Register: Boolean ); override; 
 end; 
 TContextMenu = class( TComObject, IShellExtInit, IContextMenu ) 
 private 
FFileName: String; 
function BuildSubMenu( Menu: HMENU; IndexMenu: Integer;   var IDCmdFirst: Integer ): HMENU; 
 protected 
szFile: array[0..MAX_PATH] of Char; 
// Необходимо для исключения предупреждения компилятора о неоднозначности
function IShellExtInit.Initialize = IShellExtInit_Initialize; 
 public 
{ IShellExtInit } 
function IShellExtInit_Initialize(pidlFolder: PItemIDList; lpdobj: IDataObject; 
  hKeyProgID: HKEY): HResult; stdcall; 
{ IContextMenu } 
function QueryContextMenu(Menu: HMENU; 
  indexMenu, idCmdFirst, idCmdLast, uFlags: UINT): HResult; stdcall; 
function InvokeCommand(var lpici: TCMInvokeCommandInfo): HResult; stdcall; 
function GetCommandString(idCmd, uType: UINT; pwReserved: PUINT; 
  pszName: LPSTR; cchMax: UINT): HResult; stdcall; 
 end; 
var 
 // Должен быть инициализирован перед регистрацией TContextMenu! 
 GFileExtensions: TStringList; 
const 
 MenuCommandStrings: array[ 0..3 ] of String = (  '','&STW Web Upload','&STW FTPClient','&STW Setup' ); 

implementation 
{ TContextMenuFactory } 
{ Public } 
Function ReadDefaultPAth: String; 
var 
 path	   : String; 
 Reg		: TRegistry; 
begin 
Reg := TRegistry.CReate; 
try 
With Reg Do 
 Begin 
  RootKey := HKEY_LOCAL_MACHINE; 
  Path := 'SOFTWAREMicrosoftWindowsCurrentVersionApp Paths'; 
  If KeyExists(Path) Then 
	 Begin 
	 OpenKey(Path+'sendtoweb.exe',false); 
	 Result := ReadString(#0); 
	 closekey; 
	 End; 
 // Ключ добавлен в реестр. 
 End; 
Finally 
Reg.CloseKey; 
Reg.Free; 
End; 
End;// Код регистрации 

procedure TContextMenuFactory.UpdateRegistry( Register: Boolean ); 
begin 
 inherited UpdateRegistry( Register ); 
 // Регистрация нашего обработчика 
 if Register then 
 begin 
CreateRegKey( '*ShellExContextMenuHandlersSendToWeb', '', 
  GUIDToString( Class_ContextMenu ) ); 
CreateRegKey( 'CLSID' + GUIDToString( ClassID ) + '' + 
  ComServer.ServerKey, 'ThreadingModel', 'Apartment' ); 
 end else 
 begin 
DeleteRegKey( '*ShellExContextMenuHandlersSendToWeb' ); 
 end; 
end; 
{ TContextMenu } 
{ Private } 
{ Построение контекстного меню с использованием хэндла существующего меню.   Если Menu =  nil, мы создаем новый хэндл меню и возвращаем его как результат функции. 
 Заметьте, что обработчик не поддерживаетвложенные (рекурсивные) 
 меню. } 

function TContextMenu.BuildSubMenu( Menu: HMENU; IndexMenu: Integer;   var IDCmdFirst: Integer ): HMENU; 
var 
 i: Integer; 
 menuItemInfo: TMenuItemInfo; 
begin 
 if Menu = 0 then 
Result := CreateMenu 
 else 
Result := Menu; 
 // Подготавливаем меню 
 with menuitemInfo do 
 begin 
cbSize		  := SizeOf( TMenuItemInfo ); 
fMask		   := MIIM_CHECKMARKS or MIIM_DATA or MIIM_ID or  MIIM_STATE or MIIM_SUBMENU or MIIM_TYPE or MIIM_CHECKMARKS; 
fType		   := MFT_STRING; 
fState		  := MFS_ENABLED; 
hSubMenu		:= 0; 
hbmpChecked	 := 0; 
hbmpUnchecked   := 0; 
 end; 
 for i := 0 to High( MenuCommandStrings ) do 
 begin 
  if i = 0 then 
  menuitemInfo.fType := MFT_SEPARATOR 
  else 
  menuiteminfo.ftype := MFT_String; 
  if i = 1 then 
  menuitemInfo.fstate := MFS_ENABLED OR MFS_DEFAULT 
  Else 
  menuitemInfo.fstate := MFS_ENABLED; 
menuitemInfo.dwTypeData := PChar(MenuCommandStrings[ i ]); 
menuitemInfo.wID := IDCmdFirst; 
InsertMenuItem( Result, IndexMenu + i, True, menuItemInfo ); 
Inc( IDCmdFirst ); 
 end; 
end; 

{ IShellExtInit } 
function TContextMenu.IShellExtInit_Initialize( pidlFolder: PItemIDList;  lpdobj: IDataObject; hKeyProgID: HKEY ): HResult; 
var 
 medium: TStgMedium; 
 fe: TFormatEtc; 
begin 
 with fe do 
 begin 
cfFormat := CF_HDROP; 
ptd := Nil; 
dwAspect := DVASPECT_CONTENT; 
lindex := -1; 
tymed := TYMED_HGLOBAL; 
 end; 
 // Ошибка, если  lpdobj = Nil. 
 if lpdobj = Nil then 
 begin 
Result := E_FAIL; 
Exit; 
 end; 
 Result := lpdobj.GetData(fe, medium); 
 if Failed(Result) then Exit; 
 // Если выбран только один файл, получаем его имя и сохраняем в  
 // szFile. иначе - ошибка. 
 if DragQueryFile(medium.hGlobal, $FFFFFFFF, Nil, 0) = 1 then 
 begin 
DragQueryFile(medium.hGlobal, 0, szFile, SizeOf(szFile)); 
Result := NOERROR; 
 end 
 else 
Result := E_FAIL; 
 ReleaseStgMedium(medium); 
end; 

{ IContextMenu } 
function TContextMenu.QueryContextMenu( Menu: HMENU;  indexMenu, idCmdFirst, idCmdLast, uFlags: UINT ): HResult; 
var 
 extension:	  String; 
 I: Integer; 
 idLastCommand:  Integer; 
begin 
 Result := E_FAIL; 
 idLastCommand := idCmdFirst; 
 // Получаем расширение файла и определяем, есть ли для него  
 // зарегистрированный обработчик 
//  extension := UpperCase( ( FFileName ) ); 
//for i := 0 to GFileExtensions.Count - 1 do 
//   if Pos(Lowercase(GFileExtensions[ i ]),lowercase(extension))=0 then 
 //  begin 
  BuildSubMenu( Menu, indexMenu, idLastCommand ); 
  // Return value is number of items added to context menu 
  Result := idLastCommand - idCmdFirst; 
//	  Exit; 
//	end; 
end; 

function TContextMenu.InvokeCommand( var lpici:  TCMInvokeCommandInfo ): HResult; 
var 
 idCmd: UINT; 
begin 
 if HIWORD( Integer(lpici.lpVerb) ) <> 0 then 
Result := E_FAIL 
 else 
 begin 
 idCmd := LOWORD( lpici.lpVerb ); 
 Result := S_OK; 
 // Активизация диалога и подготовка к послке данных в Web
case idCmd of 
  1: Begin 
	ShellExecute( GetDesktopWindow, nil,Pchar(ExtractFileName(ReadDefaultPath)), Pchar('Direct'+'"'+szfile+'"'), nil, SW_SHOW ); 
	End; 
  3:Begin 
	ShellExecute( GetDesktopWindow, nil,Pchar(ExtractFileName(ReadDefaultPath)), 
	  Pchar('Path'), nil, SW_SHOW ); 
	End; 
  2: ShellExecute( GetDesktopWindow, nil, Pchar(ExtractFileName(ReadDefaultPath)),  PChar(''), nil, SW_SHOW ); 
  else 
	Result := E_FAIL; 
  end; 
 end; 
end; 

function TContextMenu.GetCommandString( idCmd, uType: UINT;  pwReserved: PUINT; pszName: LPSTR; cchMax: UINT ): HResult; 
begin 
//  StrCopy( pszName, 'Send To The Web'); 
 Result := S_OK; 
end; 
initialization 
 { Заметьте, что в данном фрагменте мы создаем экземпляр TContextMenuFactory,	 а не TComObjectFactory. } 
 TContextMenuFactory.Create( ComServer, TContextMenu, Class_ContextMenu, 'ContextMenu', 'Send To The Web', ciMultiInstance ); 
 // Инициализируем список расширений
 GFileExtensions := TStringList.Create; 
// GFileExtensions.Add( 'setup msn' ); 
finalization 
 GFileExtensions.Free; 
end.					

 

или можешь почитать http://ddsoft.hoha.ru/docs/shell1/

прошу не банить за ссылку на другой ресурс....

 

или ниже прикрепляю исходник

shellasrc.rar

Жизнь - пьяный поэт, я - слово.

Я жесток и грустен, когда ему херово.

Жизнь - старый поэт, жизнь - усталый поэт,

А я... Что я? Его инструмент!...

 

Разработка Broadcom: http://www.rk-team.net/

Новости проекта QuB на Twitter

Ссылка на комментарий
Поделиться на другие сайты

RusEm,

многабукаф. ниасилил.... :cry:

 

Сообщение от модератора Pimen
:104:

--- Модели телефонов

Siemens ME45 -> Samsung SGH-X100 -> Samsung SGH-X700 -> Samsung SGH-E200 (Titan Gray) + 512MB -> Nokia 6500 Classic (Black)

--- Контактная информация

ICQ: 2-677-776

--- Вклад в развитие форума SGH.RU

Java Midlet Program by Jeeb - программа для работы с Java-приложениями и играми Samsung (добавление поддержки русского ввода, адаптация, создание Jad и пр.)

--------------------

Ссылка на комментарий
Поделиться на другие сайты

ПРОШУ КАЧАТЬ... Просили контекстное меню... Получите... ;) Пользуйся народ, пока бесплатно.... :ak: Инструкцию не трогал, т.к. по сути не изменилась...

 

RusEm,

спасибо за помощь....

--- Модели телефонов

Siemens ME45 -> Samsung SGH-X100 -> Samsung SGH-X700 -> Samsung SGH-E200 (Titan Gray) + 512MB -> Nokia 6500 Classic (Black)

--- Контактная информация

ICQ: 2-677-776

--- Вклад в развитие форума SGH.RU

Java Midlet Program by Jeeb - программа для работы с Java-приложениями и играми Samsung (добавление поддержки русского ввода, адаптация, создание Jad и пр.)

--------------------

Ссылка на комментарий
Поделиться на другие сайты

Контекстное меню работает,так все супер.

Багов не выявил. :ak:Мегареальная прога!

Прога умеет все,что надо.

Jeeb,молоток)))

SGH-X700 black xeek6+SanDisk 1GB

Ссылка на комментарий
Поделиться на другие сайты

Jeeb,

МОЛОДЕЦ!!! :42: Прога рульная! :idea::(:respect:

 

А вот, наверное, нереальная идейка:

Можешь ли ты вмонтировать в нее Ява-Книго-Мэйкер. То есть не просто переделка приложений, но исоздание их (мидлетов). Офигенно было бы - ВСЕ в одном!

 

СПАСИБО за прогу! :42: Предложение - только мое ИМХО! :ad:

 

P.S. (Ту алл) Если не сложно напишите в личку кто-нить, что можно сделать , редактируя Manifest.mf и что это такое. Спасибо

Здесь всякие умные люди пишут всякие умные вещи... Так вот, я не такой, и поэтому не буду здесь ничего писать...

Ссылка на комментарий
Поделиться на другие сайты

Jeeb,

 

Можешь ли ты вмонтировать в нее Ява-Книго-Мэйкер.

 

Это,типа, прога делающая книги для телефонов самсунг? Если я правельно понял))

То это глупо,есть хорошая прога Bookreader [bookcutter] By Артур Асеев хорошо делает книжки,а Java Midlet Program создана для других функций.

Может кто-то предложит эмулятор явы "вмонтировать"? :(

ИМХО...

SGH-X700 black xeek6+SanDisk 1GB

Ссылка на комментарий
Поделиться на другие сайты

=ELEMENT=,

Да, ты понял верно. И я знаю и юзаю прогу от Артура Асеева, но там некоторые функции для Сониэриков есть, которых нет для Самсов :) , так вот я и думал, что с автором можно будет поговорить об этих функциях, если Jeeb , конечно, возьмется за это.

А ява-эмулятор тоже неплохо было бы...

 

Jeeb,

Аппетита у нас не отбавишь :(

Здесь всякие умные люди пишут всякие умные вещи... Так вот, я не такой, и поэтому не буду здесь ничего писать...

Ссылка на комментарий
Поделиться на другие сайты

=ELEMENT=,

Да, ты понял верно. И я знаю и юзаю прогу от Артура Асеева, но там некоторые функции для Сониэриков есть, которых нет для Самсов :93: , так вот я и думал, что с автором можно будет поговорить об этих функциях, если Jeeb , конечно, возьмется за это.

А ява-эмулятор тоже неплохо было бы...

 

Jeeb,

Аппетита у нас не отбавишь :roll:

 

 

Пока браться не буду, хоть идея интересная, в отпуск уезжаю... В середине июля... А потом не знаю...

--- Модели телефонов

Siemens ME45 -> Samsung SGH-X100 -> Samsung SGH-X700 -> Samsung SGH-E200 (Titan Gray) + 512MB -> Nokia 6500 Classic (Black)

--- Контактная информация

ICQ: 2-677-776

--- Вклад в развитие форума SGH.RU

Java Midlet Program by Jeeb - программа для работы с Java-приложениями и играми Samsung (добавление поддержки русского ввода, адаптация, создание Jad и пр.)

--------------------

Ссылка на комментарий
Поделиться на другие сайты

А можна сдилать так, шоб разРЕШЕНИЕ менять можно было,

да ищо плюс возможность удаления или добавления софт полосы

в некоторых мидлетах? :bx:

Ссылка на комментарий
Поделиться на другие сайты

А можна сдилать так, шоб разРЕШЕНИЕ менять можно было,

да ищо плюс возможность удаления или добавления софт полосы

в некоторых мидлетах? :bx:

Я с явой, если честно, вообще никак не связан... А программа всего лишь добавляет папку "ком" куда надо... Скажите принцип, попробую осуществить алгоритм...

--- Модели телефонов

Siemens ME45 -> Samsung SGH-X100 -> Samsung SGH-X700 -> Samsung SGH-E200 (Titan Gray) + 512MB -> Nokia 6500 Classic (Black)

--- Контактная информация

ICQ: 2-677-776

--- Вклад в развитие форума SGH.RU

Java Midlet Program by Jeeb - программа для работы с Java-приложениями и играми Samsung (добавление поддержки русского ввода, адаптация, создание Jad и пр.)

--------------------

Ссылка на комментарий
Поделиться на другие сайты

Вот посмотри эту штуковину))

Надо кое-какие функции отсюда стырить :idea:

Java_Adapter.rar

GameTeam.ru - Крупнейший каталог бесплатных Java-игр!

Ссылка на комментарий
Поделиться на другие сайты

Вот посмотри эту штуковину))

Надо кое-какие функции отсюда стырить :idea:

 

Какие?

--- Модели телефонов

Siemens ME45 -> Samsung SGH-X100 -> Samsung SGH-X700 -> Samsung SGH-E200 (Titan Gray) + 512MB -> Nokia 6500 Classic (Black)

--- Контактная информация

ICQ: 2-677-776

--- Вклад в развитие форума SGH.RU

Java Midlet Program by Jeeb - программа для работы с Java-приложениями и играми Samsung (добавление поддержки русского ввода, адаптация, создание Jad и пр.)

--------------------

Ссылка на комментарий
Поделиться на другие сайты

1. Изменение обработчика клавишь в играх/приложениях

2. Удаление ненужных параметров

3. Редактор манифеста

GameTeam.ru - Крупнейший каталог бесплатных Java-игр!

Ссылка на комментарий
Поделиться на другие сайты

3. Редактор манифеста

А он уже есть :idea:

Здесь всякие умные люди пишут всякие умные вещи... Так вот, я не такой, и поэтому не буду здесь ничего писать...

Ссылка на комментарий
Поделиться на другие сайты

Во как быстро мою идею взяли :ad:

Я просто не качал прогу :(

GameTeam.ru - Крупнейший каталог бесплатных Java-игр!

Ссылка на комментарий
Поделиться на другие сайты

1. Изменение обработчика клавишь в играх/приложениях

2. Удаление ненужных параметров

3. Редактор манифеста

 

1. Объясните процесс изменения, алгоритм я напишу...

2. Откуда и зачем?

3. Одного мало? :ad:

--- Модели телефонов

Siemens ME45 -> Samsung SGH-X100 -> Samsung SGH-X700 -> Samsung SGH-E200 (Titan Gray) + 512MB -> Nokia 6500 Classic (Black)

--- Контактная информация

ICQ: 2-677-776

--- Вклад в развитие форума SGH.RU

Java Midlet Program by Jeeb - программа для работы с Java-приложениями и играми Samsung (добавление поддержки русского ввода, адаптация, создание Jad и пр.)

--------------------

Ссылка на комментарий
Поделиться на другие сайты

1. Объясните процесс изменения, алгоритм я напишу...

Если честно, то и я никак с java не связан. Вот видел одного человека на форуме (ник Artyomcool) - он java-игры пишет, может его поспрашать надо?

 

2. Откуда и зачем?

Наверное какие-нибудь функции для определенных телефонов, которые не используются в других моделях (например, во многих самсунгах нету доступа из java к файловой системе, а в операх мод есть эксплорер), а убирать их, наверное, для экономии места в папке java.

Здесь всякие умные люди пишут всякие умные вещи... Так вот, я не такой, и поэтому не буду здесь ничего писать...

Ссылка на комментарий
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйте новый аккаунт в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти



×
×
  • Создать...