Важная информация

User Tag List

Страница 20 из 180 ПерваяПервая ... 161718192021222324 ... ПоследняяПоследняя
Показано с 191 по 200 из 1799

Тема: Новая версия Unreal Speccy

  1. #191
    Veteran Аватар для icebear
    Регистрация
    05.05.2005
    Адрес
    Германия
    Сообщений
    1,614
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    2
    Поблагодарили
    2 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Dr.Lion/RSM
    Я планирую откомпилировать программы в пи код...
    Разницу между ComCtl32.dll в XP и "не XP" известна? С каким пор язык VB обзавёлся виртуальной машиной?

  2. #192
    Member Аватар для Odrick
    Регистрация
    02.06.2005
    Адрес
    Киев
    Сообщений
    92
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Dr.Lion/RSM
    Так же Scorpion жаловался, что у него незапускается конфигуратор и выдает сообщение о проблемах с компонентом Common Dialog Control
    Не юзай его! Какой смысл таскать за собой ocx, если все, что он делает, можно сделать через API! Если хочеш, могу скинуть пример. Скажи только куда. Кроме того, по умолчанию он есстессно не ставится ни с одной виндой.
    Цитата Сообщение от Dr.Lion/RSM
    Пи код, насколько я знаю, - это специальный код, который исполняет виртуальная машина Visual Basic, поэтому, как бы, должна быть меньшая платформозависимость. Виртуальная машина, по-идеи, входит в состав винды сразу после ее установки, по крайней мере после установки офиса она там точно есть!
    Нет. Нет никакой виртуальной машины Ты перепутал, наверное, с набором стандартных dll для VB. Они действительно ставятся с виндой и с офисом.

    По поводу динамических контролов - не вопрос. Буквально вчера решал такую же задачку. Тавай ТЗ - помогу набросать код.
    То, что для одних константа, для других только переменная

  3. #193
    Member Аватар для Odrick
    Регистрация
    02.06.2005
    Адрес
    Киев
    Сообщений
    92
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Кроме того могу написать инсталяху для тулзни.
    То, что для одних константа, для других только переменная

  4. #194
    Member Аватар для Dr.Lion/RSM
    Регистрация
    08.04.2005
    Адрес
    Kharkov mega city
    Сообщений
    188
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от icebear
    Разницу между ComCtl32.dll в XP и "не XP" известна? С каким пор язык VB обзавёлся виртуальной машиной?
    Понятия не имею, о какой разнице идет речь! Насчет виртуальной машины: что такое по-твоему msvbvm60.dll ? Если делать инсталяху средствами VB, то в общий пакет он ложит кучу всякого геммороя, в том числе и выше указанную библиотеку, а это значит, что без нее программы на VB не будут работать. Но данная библиотека попадает на комп вместе с виндой (у меня XP без офиса), либо с офисом (это наверняка).
    Цитата Сообщение от Odrick
    Не юзай его! Какой смысл таскать за собой ocx, если все, что он делает, можно сделать через API! Если хочеш, могу скинуть пример. Скажи только куда. Кроме того, по умолчанию он есстессно не ставится ни с одной виндой.
    Если знаешь, то напиши мне пример, как можно заюзать это в Visual Basic через Win API. Кусок исходника можешь выложить сдесь. Вот то, что у меня юзается сейчас:

    Private Function GetFileName(BoxName As String) As String
    Dialog.Filter = "Файл настройки|*.ini|Текстовый файл|*.txt|Все файлы|*.*"
    Dialog.Flags = cdlOFNHideReadOnly
    Dialog.DialogTitle = BoxName
    Dialog.FileName = ""
    Dialog.ShowOpen
    Dialog.InitDir = ""
    GetFileName = Dialog.FileName
    End Function

    Напиши, пожалуйста, альтернативу под API.
    Цитата Сообщение от Odrick
    Кроме того могу написать инсталяху для тулзни.
    Какая здесь нафиг инсталяха? Архив с тремя файлами распаковывается в каталог эмуля - и все!
    Автор эмуляторов Nescube, PocketZX.

  5. #195
    Member Аватар для Odrick
    Регистрация
    02.06.2005
    Адрес
    Киев
    Сообщений
    92
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Dr.Lion/RSM
    Насчет виртуальной машины: что такое по-твоему msvbvm60.dll ? Если делать инсталяху средствами VB, то в общий пакет он ложит кучу всякого геммороя, в том числе и выше указанную библиотеку, а это значит, что без нее программы на VB не будут работать.
    msvbvm60.dll - всего лиш набор com-серверов, которые реализуют стандартные GUI-элементы VB и основные функции языка. Но это никак не виртуальная машина Так можно любую dll с com-объектами и функциями назвать виртуальной машиной.
    Цитата Сообщение от Dr.Lion/RSM
    Какая здесь нафиг инсталяха? Архив с тремя файлами распаковывается в каталог эмуля - и все!
    Это да. Но справедливо только в том случае, если у юзера есть все компоненты, нужные для работы софта. По хорошему это делается так: вылаживается минимальная версия (архив с 3-мя файлами ) и полная инсталяха. Но только сделанная не "стандартными средствами VB" . А дальше пусть каждый качает то, что ему нужно.

    По поводу диалога выбора файла. Сделай модуль, вставь в него следующий код и пользуй функцию opendlg. Думаю смысл всех параметров ясен Так как здесь юзается чистое API, ничего лишнего типа comdlg32.ocx за собой таскать не прийдеться

    Код:
    Option Explicit 'Чтоб все объявить явно 
    
    Public Enum ofnflags 'Флаги API GetOpenFileName 
    OFN_ALLOWMULTISELECT = &H200 
    OFN_CREATEPROMPT = &H2000 
    OFN_ENABLEHOOK = &H20 
    OFN_ENABLETEMPLATE = &H40 
    OFN_ENABLETEMPLATEHANDLE = &H80 
    OFN_EXPLORER = &H80000                         '  new look commdlg 
    OFN_EXTENSIONDIFFERENT = &H400 
    OFN_FILEMUSTEXIST = &H1000 
    OFN_HIDEREADONLY = &H4 
    OFN_LONGNAMES = &H200000                       '  force long names for 3.x modules 
    OFN_NOCHANGEDIR = &H8 
    OFN_NODEREFERENCELINKS = &H100000 
    OFN_NOLONGNAMES = &H40000                      '  force no long names for 4.x modules 
    OFN_NONETWORKBUTTON = &H20000 
    OFN_NOREADONLYRETURN = &H8000 
    OFN_NOTESTFILECREATE = &H10000 
    OFN_NOVALIDATE = &H100 
    OFN_OVERWRITEPROMPT = &H2 
    OFN_PATHMUSTEXIST = &H800 
    OFN_READONLY = &H1 
    OFN_SHAREAWARE = &H4000 
    OFN_SHAREFALLTHROUGH = 2 
    OFN_SHARENOWARN = 1 
    OFN_SHAREWARN = 0 
    OFN_SHOWHELP = &H10 
    End Enum 
    
    Private Type OPENFILENAME 'Структура для API GetOpenFileName 
        lStructSize As Long 
        hwndOwner As Long 
        hInstance As Long 
        lpstrFilter As String 
        lpstrCustomFilter As String 
        nMaxCustFilter As Long 
        nFilterIndex As Long 
        lpstrFile As String 
        nMaxFile As Long 
        lpstrFileTitle As String 
        nMaxFileTitle As Long 
        lpstrInitialDir As String 
        lpstrTitle As String 
        flags As Long 
        nFileOffset As Integer 
        nFileExtension As Integer 
        lpstrDefExt As String 
        lCustData As Long 
        lpfnHook As Long 
        lpTemplateName As String 
    End Type 
    
    Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long 
    
    Public Function opendlg(hwnd As Long, Filter As String, FilterIndex As Long, FileName As String, DefaultExt As String, InitDir As String, DialogTitle As String, flags As ofnflags) As String 
    'Функция вызывает окно выбора файла, возвращает выбранный файл (или пустую строку в случае отмены) 
    Dim iDelim As Long 
    Dim OFN As OPENFILENAME 'Структура для API GetOpenFileName 
    Dim sTemp As String 
    Dim i As Integer 
    Dim retval As Long 'Значение возвращаемое самой API 
    
      flags = flags And (&H1 Or &H2 Or &H4 Or &H8 Or &H10 Or &H100 Or &H200 Or &H400 Or &H800 Or &H1000 Or &H2000 Or &H4000 Or &H8000 Or &H40000 Or &H80000 Or &H100000 Or &H200000) 'Эти флаги не должны стоять в открытии, сбросить их 
    
      With OFN 
            'Длинны структуры 
           .lStructSize = Len(OFN) 
           'Дескриптор окна 
           .hwndOwner = hwnd 
           'Коментарии излишни, флаги 
           .flags = flags 
           'Расширение по умолчанию, тоже нужно хоть и открытие :-( 
           .lpstrDefExt = DefaultExt 
           sTemp = InitDir 
           'Если не выбрана парка то папка с прогой 
           If sTemp = "" Then sTemp = App.Path 
           .lpstrInitialDir = sTemp 
           sTemp = FileName 
           'Все заполнить символом chr(0). Надо! 
           .lpstrFile = sTemp & String$(255 - Len(sTemp), 0) 
           .nMaxFile = 255 
           .lpstrFileTitle = String$(255, 0) 
           .nMaxFileTitle = 255 
            sTemp = Filter 
            'Чтоб ни мучится с выписыванием chr(0) в вызов ф-ии 
            For i = 1 To Len(sTemp) 
                If Mid(sTemp, i, 1) = "|" Then 
                   Mid(sTemp, i, 1) = vbNullChar 
                End If 
            Next 
            sTemp = sTemp & String$(2, 0) 
            .lpstrFilter = sTemp 
            .nFilterIndex = FilterIndex 
            .lpstrTitle = DialogTitle 
            .hInstance = App.hInstance 
     End With 
      
    'Вызов API 
    retval = GetOpenFileName(OFN) 
     'А все ли ОК? 
    If retval = 0 Then 
    opendlg = "" 
    Else 
        'первый символ chr(0) 
         iDelim = InStr(OFN.lpstrFile, vbNullChar) 
         'Удалить лишнии chr(0) 
         If iDelim Then opendlg = Left$(OFN.lpstrFile, iDelim - 1) 
    End If 
    End Function
    Да, посмотрел интерфейс - хотелось бы все-таки что-то в духе списка с ветками настроек слева и странички справа с параметрами. И чтобы каждый параметр редактировался с помощью своего контрола. Так по моему удобнее будет... Но это так, мое мнение
    То, что для одних константа, для других только переменная

  6. #196
    Member Аватар для Dr.Lion/RSM
    Регистрация
    08.04.2005
    Адрес
    Kharkov mega city
    Сообщений
    188
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Odrick
    По поводу диалога выбора файла. Сделай модуль, вставь в него следующий код и пользуй функцию opendlg. Думаю смысл всех параметров ясен Так как здесь юзается чистое API, ничего лишнего типа comdlg32.ocx за собой таскать не прийдеться
    Вот это чтоб получить несчастное имя файла, мне нужно эту хреновину вставить? Я так ничего и не понял, что там к чему и как этим пользоваться! Помоему, я где-то когда-то видел Диалог через АПИ, но там было все намного короче и понятней, вот вспомнить бы где видел!
    Автор эмуляторов Nescube, PocketZX.

  7. #196
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  8. #197
    Member Аватар для Dr.Lion/RSM
    Регистрация
    08.04.2005
    Адрес
    Kharkov mega city
    Сообщений
    188
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию UConfig v1.2 beta

    Вот последняя версия программы. Об изменениях и дополнениях читайте в файле about. Как и обещал, откомпилено в пи код. Жду новых сообщений о глюках!
    Вложения Вложения
    Автор эмуляторов Nescube, PocketZX.

  9. #198
    Member Аватар для Odrick
    Регистрация
    02.06.2005
    Адрес
    Киев
    Сообщений
    92
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ндя... Объясняю: Это код для отдельного модуля. То есть, добавляеш в проект модуль, обзываеш его как-нить OpenDialog.bas и вставляеш туда код. Для того, чтобы вызвать диалог открытия файла в твоем случае делаеш так:

    Private Function GetFileName(BoxName As String) As String
    GetFileName = opendlg(Me.hwnd, "Файл настройки|*.ini|Текстовый файл|*.txt|Все файлы|*.*", 0, "", "", "", BoxName, OFN_HIDEREADONLY)
    End Function

    Так понятнее? Или нужно более подробно расписать текст модуля? Давай мыло - напишу подробно с теорией использования API в VB А то что большой модуль - так он и реализует все что нужно в диалоге выбора файла. Могу укоротить его раза в 3. Но тогда он будет несколько убог по функциональности.
    То, что для одних константа, для других только переменная

  10. #199
    Member Аватар для Dr.Lion/RSM
    Регистрация
    08.04.2005
    Адрес
    Kharkov mega city
    Сообщений
    188
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Odrick
    Ндя... Объясняю: Это код для отдельного модуля. То есть, добавляеш в проект модуль, обзываеш его как-нить OpenDialog.bas и вставляеш туда код. Для того, чтобы вызвать диалог открытия файла в твоем случае делаеш так:

    Private Function GetFileName(BoxName As String) As String
    GetFileName = opendlg(Me.hwnd, "Файл настройки|*.ini|Текстовый файл|*.txt|Все файлы|*.*", 0, "", "", "", BoxName, OFN_HIDEREADONLY)
    End Function
    Вот теперь понятно, что я должен вставить в свою программу. В версии 1.3 попробую.
    Цитата Сообщение от Odrick
    Давай мыло - напишу подробно с теорией использования API в VB А то что большой модуль - так он и реализует все что нужно в диалоге выбора файла. Могу укоротить его раза в 3. Но тогда он будет несколько убог по функциональности.
    Вот мыло:[email protected] расталкуй, если можешь, по поводу Win API. Укоротить твой пример не мешало бы, ибо диалог у меня используется только для открытия файла в таком виде, как я тибе приводил пример. Еще, что мне нужно вставить в программу вместо:

    IniName=Dialog.FileName

    и как мне быть со строками из моего примера:

    ...
    Dialog.FileName=""
    ...
    Dialog.InitDir=""
    ...
    Автор эмуляторов Nescube, PocketZX.

  11. #200
    Member Аватар для Odrick
    Регистрация
    02.06.2005
    Адрес
    Киев
    Сообщений
    92
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    0
    Поблагодарили
    0 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Рассмотрим внимательно параметры функции:

    Public Function opendlg(hwnd As Long, Filter As String, FilterIndex As Long, FileName As String, DefaultExt As String, InitDir As String, DialogTitle As String, flags As ofnflags) As String

    Dialog.FileName это аналогичный параметр функции FileName
    Dialog.InitDir = параметр InitDir

    Так что это все задается во время вызова, а не предварительно как в случае с
    CommonDialogControl

    Цитата Сообщение от Dr.Lion/RSM
    Еще, что мне нужно вставить в программу вместо:
    IniName=Dialog.FileName
    Подожди, насколько я понял у тебя есть функция GetFileName, которая возвращает имя выбранного файла?
    То, что для одних константа, для других только переменная

Страница 20 из 180 ПерваяПервая ... 161718192021222324 ... ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Порт Unreal Speccy под Linux!
    от ^m00h^ в разделе Эмуляторы
    Ответов: 62
    Последнее: 28.11.2018, 22:02
  2. Новая версия EmuZWin
    от Vladimir Kladov в разделе Эмуляторы
    Ответов: 217
    Последнее: 09.05.2018, 20:32
  3. Настройщик Unreal Speccy
    от Dr.Lion/RSM в разделе Эмуляторы
    Ответов: 97
    Последнее: 03.03.2008, 14:12
  4. unreal speccy beakpoints
    от Raider в разделе Эмуляторы
    Ответов: 2
    Последнее: 10.07.2005, 23:13
  5. работа с образами HDD в Unreal Speccy
    от elf в разделе Эмуляторы
    Ответов: 15
    Последнее: 30.03.2005, 18:22

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •