Вручную скомпилируйте проект VB6, используя LINK.EXE и C2.EXE - PullRequest
0 голосов
/ 31 августа 2018

Я хотел бы попытаться избежать приложения VB6.exe при попытке скомпилировать мой проект. Он имеет тенденцию создавать файлы * .obj и затем вылетает, оставляя меня без понятия, что пошло не так.

"c:\Program Files (x86)\Microsoft Visual Studio\VB98\VB6.EXE" /m MyProject.vbp

Я бы хотел использовать LINK.exe и C2.exe для компиляции моего приложения. Я нашел действительно отличную статью, расположенную здесь о процессе со всеми коммутаторами и т. Д. Я надеялся, что кто-то попробовал что-то связать с этим и добился успеха, чтобы они могли сказать мне, какие именно коммутаторы мне нужно использовать, и шаг пошаговый процесс создания объектных файлов, а затем связать их все с EXE.

1 Ответ

0 голосов
/ 05 сентября 2018

В итоге я получил этот старый источник для компиляции. Я уверен, что моя ситуация была уникальной, но я думал, что поделюсь надеждой помочь кому-то еще найти свой путь, если это случится с ними.

Во-первых, я НЕ мог заставить этот проект скомпилировать, чтобы спасти мою жизнь в конце. Сначала он будет компилироваться в IDE, затем только при запуске следующего в командной строке ...

"c:\Program Files (x86)\Microsoft Visual Studio\VB98\VB6.EXE" /m MyProject.vbp

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

Я думаю, что в конце концов это был просто удар или промах. Но в какой-то момент что-то указывало на конкретный файл модуля, который у меня был, который использовался для доступа (чтения / записи) к реестру. Я думаю, что это было между просмотром журналов и, возможно, даже окна просмотра событий Windows и т. Д. Так что я начал думать ... Может быть, он скомпилируется, если это не было использовано. Поэтому я удалил модуль из проекта, попытался скомпилировать, затем VB был достаточно хорош, чтобы показывать мне каждый вызов, который не будет работать, потому что упомянутая функция не существует. Я также закомментировал все это, затем смог собрать без особых усилий, и все снова прошло гладко!

Так что это помогло мне определить, о чем говорит VB, но это не решило проблему подчеркивания (что я не мог скомпилировать ВСЕ из моего источника). Поэтому я начал пытаться поочередно возвращать весь исходный код в приложение, чтобы увидеть, где оно сломается.

  1. Сначала я добавил файл модуля в проект и только что скомпилировал.

    Success!
    
  2. Затем я попытался раскомментировать первое, что я закомментировал (ссылка на функцию в этом модуле), а затем перекомпилировал.

    Success!
    
  3. Мне удалось пройти через все мои закомментированные строки кода и вернуть их обратно в исходное состояние. Затем я перекомпилировал в последний раз.

    Success!
    

Так что в этот момент у меня было ВСЕ вернулось к тому, что было у меня до того, как я начал пытаться компилировать. Теперь все работает без проблем!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...