-
0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
<#@ output extension=".cs" #>
<#@ assembly name="System.Xml" #>
<#
System.Xml.XmlDocument configurationData = ...; // Read a data file here.
#>
namespace Fabrikam.<#= configurationData.SelectSingleNode("jobName").Value #>
{
... // More code here.
}
T4
Design time templates define part of the source code and other resources of your application. Typically you use several templates that read the data in a single input file or database, and generate some of your .cs, .vb, or other source files. Each template generates one file. They are executed within Visual Studio or MSBuild.
https://docs.microsoft.com/en-us/visualstudio/modeling/code-generation-and-t4-text-templates?view=vs-2019
MAKAKA,
11 Июля 2020
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
private void checkButton_Click(object sender, EventArgs e)
{
if (this.passportTextbox.Text.Trim() == "")
{
int num1 = (int) MessageBox.Show("Введите серию и номер паспорта");
}
else
{
string rawData = this.passportTextbox.Text.Trim().Replace(" ", string.Empty);
if (rawData.Length < 10)
{
this.textResult.Text = "Неверный формат серии или номера паспорта";
}
else
{
string commandText = string.Format("select * from passports where num='{0}' limit 1;", (object) Form1.ComputeSha256Hash(rawData));
string connectionString = string.Format("Data Source=" + Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + "\\db.sqlite");
try
{
SQLiteConnection connection = new SQLiteConnection(connectionString);
connection.Open();
SQLiteDataAdapter sqLiteDataAdapter = new SQLiteDataAdapter(new SQLiteCommand(commandText, connection));
DataTable dataTable1 = new DataTable();
DataTable dataTable2 = dataTable1;
sqLiteDataAdapter.Fill(dataTable2);
if (dataTable1.Rows.Count > 0)
{
if (Convert.ToBoolean(dataTable1.Rows[0].ItemArray[1]))
this.textResult.Text = "По паспорту «" + this.passportTextbox.Text + "» доступ к бюллетеню на дистанционном электронном голосовании ПРЕДОСТАВЛЕН";
else
this.textResult.Text = "По паспорту «" + this.passportTextbox.Text + "» доступ к бюллетеню на дистанционном электронном голосовании НЕ ПРЕДОСТАВЛЯЛСЯ";
}
else
this.textResult.Text = "Паспорт «" + this.passportTextbox.Text + "» в списке участников дистанционного голосования НЕ НАЙДЕН";
connection.Close();
}
catch (SQLiteException ex)
{
if (ex.ErrorCode != 1)
return;
int num2 = (int) MessageBox.Show("Файл db.sqlite не найден. Положите файл в папку вместе с exe.");
}
}
}
}
https://habr.com/post/510512/
Медуза, паспорта и говнокод — почему номера паспортов всех участников интернет-голосования попали в Интернет
gost,
11 Июля 2020
-
+2
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 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
/* meta */
typedef struct r_anal_meta_item_t {
ut64 from;
ut64 to;
ut64 size;
int type;
int subtype;
char *str;
int space;
} RAnalMetaItem;
typedef struct {
struct r_anal_t *anal;
int type;
int rad;
SdbForeachCallback cb;
void *user;
int count;
struct r_anal_type_function_t *fcn;
} RAnalMetaUserItem;
typedef struct r_anal_range_t {
ut64 from;
ut64 to;
int bits;
} RAnalRange;
#define R_ANAL_UNMASK_TYPE(x) (x&R_ANAL_VAR_TYPE_SIZE_MASK)
#define R_ANAL_UNMASK_SIGN(x) (((x& R_ANAL_VAR_TYPE_SIGN_MASK)>> R_ANAL_VAR_TYPE_SIGN_SHIFT)==R_ANAL_VAR_TYPE_UNSIGNED)?0:1
#define R_ANAL_GET_OFFSET(x,y,z) \
(x && x->binb.bin && x->binb.get_offset)? \
x->binb.get_offset (x->binb.bin, y, z): -1
enum {
R_ANAL_DATA_TYPE_NULL = 0,
R_ANAL_DATA_TYPE_UNKNOWN = 1,
R_ANAL_DATA_TYPE_STRING = 2,
R_ANAL_DATA_TYPE_WIDE_STRING = 3,
R_ANAL_DATA_TYPE_POINTER = 4,
R_ANAL_DATA_TYPE_NUMBER = 5,
R_ANAL_DATA_TYPE_INVALID = 6,
R_ANAL_DATA_TYPE_HEADER = 7,
R_ANAL_DATA_TYPE_SEQUENCE = 8,
R_ANAL_DATA_TYPE_PATTERN = 9,
};
// used from core/anal.c
#define R_ANAL_ADDR_TYPE_EXEC 1
#define R_ANAL_ADDR_TYPE_READ 1 << 1
#define R_ANAL_ADDR_TYPE_WRITE 1 << 2
#define R_ANAL_ADDR_TYPE_FLAG 1 << 3
#define R_ANAL_ADDR_TYPE_FUNC 1 << 4
#define R_ANAL_ADDR_TYPE_HEAP 1 << 5
#define R_ANAL_ADDR_TYPE_STACK 1 << 6
#define R_ANAL_ADDR_TYPE_REG 1 << 7
#define R_ANAL_ADDR_TYPE_PROGRAM 1 << 8
#define R_ANAL_ADDR_TYPE_LIBRARY 1 << 9
#define R_ANAL_ADDR_TYPE_ASCII 1 << 10
#define R_ANAL_ADDR_TYPE_SEQUENCE 1 << 11
#define R_ANAL_ARCHINFO_MIN_OP_SIZE 0
#define R_ANAL_ARCHINFO_MAX_OP_SIZE 1
#define R_ANAL_ARCHINFO_ALIGN 2
#define R_ANAL_ARCHINFO_DATA_ALIGN 4
Как нужно называть идентификаторы.
Источник:
https://github.com/radareorg/radare2/
TEH3OPHblu_nemyx,
11 Июля 2020
-
0
Нечто запредельно пиздатое в перле — это книга Ларри, написанная с охуенным чувством юмора и предельно чистым и умным языком, как будто сам стиль книги и то, с каким Ларри мы через этот текст знакомимся — является одним из образцов применения философии перла на практике. Роман Кашицин, царствие ему небесное, ценил; есть ещё среди нас ценители?
vistefan,
10 Июля 2020
-
0
- 1
- 2
- 3
Илья Перекопский, вице-президент мессенджера «Телеграм», будет на встрече премьера Михаила Мишустина с представителями IT-индустрии в Иннополисе, Казань
Замруководителя фракции "Справедливая Россия" Федот Тумусов планирует организовать в Госдуме круглый стол с онлайн-участием основателя Telegram Павла Дурова
ДА НЕ ПЕРЕДАВАЛ Я КЛЮЧИ
https://roem.ru/08-07-2020/282610/tlg-to-russia-with-love/
https://ria.ru/20200710/1574142863.html
Fike,
10 Июля 2020
-
0
- 1
- 2
- 3
- 4
- 5
# The API methods die when an error occurs.
say $api->getMe->{result}{username};
# ... but error handling is available as well.
my $result = eval { $api->getMe }
or die 'Got error message: ', $api->parse_error->{msg};
https://metacpan.org/pod/WWW::Telegram::BotAPI
Продолжаем пиздеть про перл.
Решил выбрать предметную область "Телеграм-бот" чтобы поднатаскаться в «Perl».
Вопрос: что за говно в оп-коде? Это говноспособ обработки ошибок предлагают, или такое распространено? Типа eval вместо try?
vistefan,
09 Июля 2020
-
+2
- 1
- 2
- 3
- 4
- 5
List<UserScoreDTO> userScores = users.stream()
.map((u) -> ScoreUtils.aggregateUserAndFlagData(u, maxTestScore))
.collect(toList());
return userScores.stream();
Collect to List<UserScoreDTO> then stream the list to Stream<UserScoreDTO>
johann,
08 Июля 2020
-
0
- 1
- 2
IntStream.range(1, userScores.size() + 1)
.forEach(position -> userScores.get(position - 1).setPosition(position));
Converting from 0 based array to 1 based array (for some reason).
johann,
08 Июля 2020
-
+1
- 1
- 2
- 3
- 4
- 5
public static bool found13 = false;
public static bool found11 = false;
// ...
public List<int> Children = new List<int>(); //index of children
public List<int> Children13 = new List<int>(); //index of children
Код бота-автора подавляющего большинства статей на нескольких языках. В основном Шведский (автор бота — швед) и, наверное, Себуанский, не знаю как правильно по-русски, короче язык океании, где-то на Филиппинах на нем говорят. На последнем, между прочим, бот нахерачил столько, что вывел себуанскую Википедию на второе место по количеству статей вообще.
Потрясающий пример говнокода, написанного учёным для дела, и приемлемо решающий свою задачу. На основе отрытых баз знаний о таксонах биологических видов и географических объектах (реки, горы, населенные пункты), генерит статьи-заглушки с краткой информационной сводкой.
https://sv.wikipedia.org/wiki/Wikipedia:Projekt_DotNetWikiBot_Framewor k/Lsjbot/Makespecies
Сори, если баян.
vistefan,
06 Июля 2020
-
+1
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
if (feet_yaw <= 58)
{
if (-58 > feet_yaw)
player->EyeAngles()->y = body_max_rotation + player->EyeAngles()->y;
}
else
{
player->EyeAngles()->y = body_max_rotation - player->EyeAngles()->y;
}
if (player->GetAnimOverlay(6)->m_flPlaybackRate > 0.1)
{
for (int resolve_delta = 58.f; resolve_delta < -58.f; resolve_delta = resolve_delta - 20.f)
{
player->EyeAngles()->y = resolve_delta;
}
}
ресольвер
esoterik,
04 Июля 2020