Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.71/190: Рейтинг темы: голосов - 190, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 16.02.2016
Сообщений: 13

Generate QR-code VB6

18.03.2016, 12:37. Показов 40844. Ответов 74
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем салют.
Возможна ли генерация QR-кода на VB6?
На C# и VB.NET существуют библиотеки, для работы с QR.
Существуют ли таковые на VB6?
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
18.03.2016, 12:37
Ответы с готовыми решениями:

Write some short C or C++ code to generate a stack overflow
Write some short C or C++ code to generate a stack overflow

Write some short C or C++ code to generate a segmentation fault
Write some short C or C++ code to generate a segmentation fault

Контроль длины Label. А также VB6 Portable vs VB6 Installed.
Исходя из заголовка темы, вопроса 2: 1.) Как определить, что в Label уже не хватает места для Caption? Длина букв разная. Например,...

74
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
12.11.2021, 09:14
Студворк — интернет-сервис помощи студентам
нее, он понимает, количество "?" соответствует количеству букв, а латиница и цифры вообще нормально видно
0
bite
 Аватар для I can
5011 / 4841 / 852
Регистрация: 13.04.2015
Сообщений: 10,121
12.11.2021, 09:15
Цитата Сообщение от Wawan_ Посмотреть сообщение
нее, он понимает, количество "?" соответствует количеству букв
Ну тогда кто-то другой не понимает проблемы.
0
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
12.11.2021, 09:17
Цитата Сообщение от Vika7714 Посмотреть сообщение
Существуют ли таковые на VB6?
Ну да, её и тираним, только мой нафилет пока не хочет нормально читать.
0
12.11.2021, 09:19

Не по теме:

Цитата Сообщение от Wawan_ Посмотреть сообщение
Ну да, её и тираним
Вика это спрашивала 5 лет назад

0
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
12.11.2021, 09:25
Упс

Добавлено через 3 минуты
Тааак, поставил другую программу, считала нормально, попробую сформировать платёжку.
А так же автоматический выбор 32-х или 64-х битную библиотеку.
0
Наивное Существо
 Аватар для vedunasv
666 / 141 / 27
Регистрация: 09.05.2020
Сообщений: 750
Записей в блоге: 15
13.11.2021, 12:46
жаль, теперь не интересно будет...
0
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
13.11.2021, 23:43
Всё получилось,вот образец для генерации

SQL
1
="ST00012|Name=УФК по Волгоградской области (ОВО по г.Волгограду- филиал ФГКУ ""УВО ВНГ России по Волгоградской области"")|PersonalAcc=03100643000000012900|BankName=УФК по Волгоградской области|BIC=011806101|CorrespAcc=40102810445370000021|KPP=345943001|PayeeINN=3443117660|lastName=" & [ФИО] & "|Contract=" & [Код] & "|payerAddress=" & "г. Волгоград, ул. " & [Улица] & "  " & [Дом] & " " & IIf([Тип МХЛИГ]="домовладение";" ";" - " & [Квартира]) & IIf([Тип МХЛИГ]="гараж";"собственник бокса № " & [ГСК_Бокс] & ", в ГСК № " & [ГСК_№] & ", по адресу: ул. " & [ГСК_Улица] & ", строение " & [ГСК_Дом];"") & "|Purpose=Защита собственности|OKTMO=18701000|TechCode=04|CBC=18011301081017000130|persAcc=04291D19400|paymPeriod=08.2021|Sum=" & [Сум_Долг]*100
Остальное как написал The trick , только я взял новую библиотеку с этого же сайта.
P.S.: ST00012 обязательно именно "2" на конце иначе прилжение сбера не может прочитать, а VTB по барабану
1
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
14.11.2021, 01:19
Вот набор всех процедур
Вложения
Тип файла: pdf standart.pdf (719.6 Кб, 38 просмотров)
0
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
14.11.2021, 01:23
И ещё я не разобрался как туда воткнуть логотип, если торкнет то поищу, если кто знает как подскажите, заранее спасибо.
0
Модератор
10069 / 3914 / 886
Регистрация: 22.02.2013
Сообщений: 5,863
Записей в блоге: 79
14.11.2021, 18:44
Wawan_, генерация изображения без записи в файл:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
Option Explicit
 
Private Enum TErrorCorretion
    QualityLow
    QualityMedium
    QualityStandard
    QualityHigh
End Enum
 
Private Type UUID
    Data1 As Long
    Data2 As Integer
    Data3 As Integer
    Data4(7) As Byte
End Type
 
Private Type PICTDESC
    size As Long
    Type As Long
    hBmp As Long
    hpal As Long
    Reserved As Long
End Type
 
Private Declare Function GetHBitmap Lib "quricol32.dll" _
                         Alias "GetHBitmapW" ( _
                         ByVal Text As Long, _
                         ByVal Margin As Long, _
                         ByVal size As Long, _
                         ByVal Level As TErrorCorretion) As OLE_HANDLE
Private Declare Function OleCreatePictureIndirect Lib "olepro32.dll" ( _
                         ByRef PicDesc As PICTDESC, _
                         ByRef RefIID As UUID, _
                         ByVal fPictureOwnsHandle As Long, _
                         ByRef IPic As IPicture) As Long
Private Declare Function IIDFromString Lib "ole32" ( _
                         ByVal lpsz As Long, _
                         ByRef lpiid As UUID) As Long
Private Declare Function DeleteObject Lib "gdi32" ( _
                         ByVal hObject As Long) As Long
 
Private Function QRCodePictureFromText( _
                 ByRef sText As String) As StdPicture
    Dim hBitmap         As OLE_HANDLE
    Dim tPicDesc        As PICTDESC
    Dim tIID_IPicture   As UUID
    
    hBitmap = GetHBitmap(StrPtr(sText), 3, 5, QualityLow)
    If hBitmap = 0 Then Exit Function
    
    With tPicDesc
       .size = Len(tPicDesc)
       .Type = vbPicTypeBitmap
       .hBmp = hBitmap
    End With
    
    IIDFromString StrPtr("{7BF80980-BF32-101A-8BBB-00AA00300CAB}"), tIID_IPicture
    
    If OleCreatePictureIndirect(tPicDesc, tIID_IPicture, True, QRCodePictureFromText) < 0 Then
        DeleteObject hBitmap
    End If
    
End Function
 
Private Sub Form_Load()
    
    Set Me.Picture = QRCodePictureFromText("Hello world!" & vbNewLine & "Привет мир!")
    
End Sub
1
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
14.11.2021, 19:35
Спасибо, огромное!!!

Добавлено через 25 минут
The trick,
Попробовал сделать форму, ругается "Me.Picture"
Visual Basic
1
    Set Me.Picture = QRCodePictureFromText("Hello world!")
0
bite
 Аватар для I can
5011 / 4841 / 852
Регистрация: 13.04.2015
Сообщений: 10,121
14.11.2021, 19:52
Цитата Сообщение от Wawan_ Посмотреть сообщение
VBA Access
Цитата Сообщение от The trick Посмотреть сообщение
Me.Picture
vb6
1
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
14.11.2021, 20:03
Написал как обычно
Visual Basic
1
    Picture = QRCodePictureFromText("Hello world!" & vbNewLine & "Привет мир!")
Стал ругаться на " .Type = vbPicTypeBitmap"


Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
Private Function QRCodePictureFromText( _
                 ByRef sText As String) As StdPicture
    Dim hBitmap         As OLE_HANDLE
    Dim tPicDesc        As PICTDESC
    Dim tIID_IPicture   As UUID
    
    hBitmap = GetHBitmap(StrPtr(sText), 3, 5, QualityLow)
    If hBitmap = 0 Then Exit Function
    
    With tPicDesc
      .size = Len(tPicDesc)
      .Type = vbPicTypeBitmap
      .hBmp = hBitmap
    End With
    
    IIDFromString StrPtr("{7BF80980-BF32-101A-8BBB-00AA00300CAB}"), tIID_IPicture
    
    If OleCreatePictureIndirect(tPicDesc, tIID_IPicture, True, QRCodePictureFromText) < 0 Then
        DeleteObject hBitmap
    End If
    
End Function
[/VB]
0
bite
 Аватар для I can
5011 / 4841 / 852
Регистрация: 13.04.2015
Сообщений: 10,121
14.11.2021, 20:13
Цитата Сообщение от Wawan_ Посмотреть сообщение
vbPicTypeBitmap
Это константа, возможно ваш Access её не знает, равна 1

Добавлено через 52 секунды
Цитата Сообщение от Wawan_ Посмотреть сообщение
Picture = QRCodePictureFromText("Hello world!" & vbNewLine & "Привет мир!")
Picture - это простая переменная? Боюсь, ничего у вас не получится.
0
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
14.11.2021, 20:58
Нееее, в данном случае "Picture" это имя поля (для проверки я его назвал "Picture1"), то же самое.
0
bite
 Аватар для I can
5011 / 4841 / 852
Регистрация: 13.04.2015
Сообщений: 10,121
14.11.2021, 21:04
Цитата Сообщение от Wawan_ Посмотреть сообщение
"Picture" это имя поля
А у Trick это объект.
0
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
15.11.2021, 00:03
Me.Picture - это поле,иначе куда припарковать результат???

Добавлено через 2 часа 12 минут
На сайте где скачал дэлэлэшку нашёл вот такую строчку

Visual Basic
1
procedure DestroyBuffer(Buffer : PByte); stdcall; external 'quricol32.dll';
кто нибудь знает как ей пользоваться
0
bite
 Аватар для I can
5011 / 4841 / 852
Регистрация: 13.04.2015
Сообщений: 10,121
15.11.2021, 08:02
Цитата Сообщение от Wawan_ Посмотреть сообщение
куда припарковать результат
Как я понимаю, у какого элемента есть Bitmap, туда и сливать.
0
2 / 2 / 0
Регистрация: 08.09.2014
Сообщений: 78
19.11.2021, 20:29
Попросил у разработчика данной библиотеки он прислал код.


-
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
[SPOILER]Option Explicit
Private Enum TErrorCorretion
    QualityLow
    QualityMedium
    QualityStandard
    QualityHigh
End Enum
Private Declare PtrSafe Sub GenerateBMP _
                Lib "C:\Downloads\quricol64.dll" _
                Alias "GenerateBMPW" ( _
                ByVal FileName As LongPtr, _
                ByVal Text As LongPtr, _
                ByVal Margin As Long, _
                ByVal Size As Long, _
                ByVal Level As TErrorCorretion)
Private Declare PtrSafe Sub GenerateBMPToClipboard _
                Lib "C:\Downloads\quricol64.dll" _
                Alias "GenerateBMPToClipboardW" ( _
                ByVal Text As LongPtr, _
                ByVal Margin As Long, _
                ByVal Size As Long, _
                ByVal Level As TErrorCorretion)
Private Sub Form_Load()
 
End Sub
 
Sub InsertImage()
   GenerateBMPToClipboard StrPtr("Hello world!"), 3, 5, QualityLow
   ActiveSheet.Paste Destination:=Worksheets("Sheet1").Range("D1:D5")
End Sub[/SPOILER]
проблема в том что вба код для екселя, помогите адаптировать.

Вставлять надо в форму "Ф_Квитанция" в поле "П_QRCod" и в ячейку таблицы "Дебиторка" столбец "QRCod"
0
bite
 Аватар для I can
5011 / 4841 / 852
Регистрация: 13.04.2015
Сообщений: 10,121
19.11.2021, 20:35
Wawan_, ну здесь картинка создаётся в буфере, а потом вставляется на лист. А у вас куда вставить можно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
19.11.2021, 20:35

Windows 2000 Rus VB6, VB6 Resource Editor отсутствует
В Windows 2000 Rus + SP3 проинсталлировал Visual Studio 6 + MSDN Full (вся студия на 6 CD-R). В VB6 “Add-In Manager” всего три компонента,...

generate ()
нужно создать программу используя generate (). Нужно сгенерировать 4 числа от 0 до 3. Нашел template &lt;class ForwardIterator, class...

Generate Device Name
Доброго времени суток. Вопросик есть. Мне нужно сгенерировать имя устройства и записать его в .plist и при каждом запуске приложения...

Rule does not generate
автор кода не я. уровень знаний абсолютный новичок. корректировал некоторые данные основываясь на логике и подсказках гугла. скрипт не...

Ошибка generate
OBRABOTKA STORAGE 1 REGULIROVKA STORAGE 2 SBORKA STORAGE 2 GENERATE 10 SPLIT 3, MET1 MET1 TRANSFER .5, MET2,MET3 ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
60
Ответ Создать тему
Новые блоги и статьи
Транслитерация текста с кириллицы на латиницу (вариант №2)
Maks 13.11.2026
Обновленная версия ранее созданной обработки. Добавлено: - Проверка исходного текста на кириллицу, через обращение к стандартной функции "ТолькоКириллицаВСтроке" из общего модуля. . .
Часы с термометром и праздничным календарем
yariko 12.11.2026
Сегодня мы рассмотрим как можно сделать отличные многофункциональные часы. Итак, поставим конкретную задачу: разработать часы с календарем, двумя термодатчиками, выводом поздравительных сообщений. . .
Транслитерация текста с кириллицы на латиницу (вариант №1)
Maks 11.11.2026
Решил облегчить жизнь себе и коллегам админам при создании электронных почтовых ящиков для пользователей, в результате написал обработку "Транслитерация текста" с кириллицы на латиницу, а в ней. . .
Книги по геймдизайну, левел-дизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru