MySQL UDF的调试方式 debugview_MySQL
MySQL UDF的调试方式
MySQL的UDF实质就是一个不需要设置入口点的动态连接库(*Nix称之为共享库)。对于DLL的调试可谓个人有个法。现在我介绍一下一个非常简单的易用的调试方法。这一方法直接利用Windows API,语言无关、开发工具无关、项目类型无关,典型的三无调试方法。并且,我们从这里讨论的调试方法支持远程调试,对于一时无法掌握开发工具原本调试器而又急于寻找程序错误的朋友此方法非常实用!
首先我们需要下载接收端,当然有心人也可以自己写一个。在 http://www.sysinternals.com/ntw2k/freeware/debugview.shtml 。透过debugview手册我们可以知道这个工具支持win9x/nt系列,并且支持内核调试!由于其调用的API均只能接收一个char * 类型参数,所以有些时候我们需要利用其他的函数有机组合产生人性可读提示。为了减少复杂程度简单的以来自 http://delphi.ktop.com.tw/topic.asp?TOPIC_ID=35166 讨论为例,讲解我是如何利用这里工具进行调试的。
1 简单输出一行信息,在调试开始时输出一条简单的信息便于我们了解debug到什么地方了。
在程序代码中根据需要加入下边一行
OutputDebugStringA("--UDF:my_name()被调用");
这样一来我就知道我定义的my_name被客户用到了,接着我要关心返回值如何。
2 输出返回值
输出返回值方法很多,可以自由组合。自由组合的最终目的是将一个有效的 char * 类型参数传递给WiNDOWS API。这里简单的以C语言字符控制函数为例。
例子:
#include
#include
/* ...........省略 */
char* __stdcall my_name(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error)
{
OutputDebugStringA("--UDF:my_name()被调用"); /* 调用了?*/
char *me = "my name";
/*---- debuger start----*/
char debugermsg[256]={0};
sprintf(debugermsg, "%s", me);
OutputDebugStringA(debugermsg);
/*---- debuger end----*/
return me;
}
当在程序中加入了类似代码那么调试就可以开始了,利用这种方式即便不使用"debuger"方式编译仍然可以得到所需的调试信息。
接收调试信息
接收调试信息只要打开debugview程序即可,程序主窗口可以实时返回所需要的调试信息。
其它平台请自行查阅手册获得对应的api,利用这种方式调试方法适当并不会造成任何困扰。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

Video Face Swap
Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Vous pouvez mesurer le taux de rafraîchissement d'un écran en comptant le nombre de fois où l'image est mise à jour par seconde. DRR est une nouvelle fonctionnalité incluse dans Windows 11 qui vous aide à économiser la batterie tout en offrant un affichage plus fluide, mais il n'est pas surprenant qu'elle ne fonctionne pas correctement. Les écrans avec des taux de rafraîchissement plus élevés devraient devenir plus courants à mesure que de plus en plus de fabricants annoncent leur intention d'arrêter de produire des moniteurs à 60 Hz. Cela se traduira par un défilement plus fluide et un meilleur jeu, mais cela se fera au prix d’une durée de vie réduite de la batterie. Cependant, la fonctionnalité de taux de rafraîchissement dynamique dans cette itération du système d’exploitation est un ajout astucieux qui peut avoir un impact important sur votre expérience globale. Poursuivez votre lecture pendant que nous discutons de ce qu'il faut faire si le taux de rafraîchissement dynamique de Windows 11 ne fonctionne pas

Sur iPhone, la fonction d'enregistrement d'écran d'Apple enregistre une vidéo de ce que vous faites sur l'écran, ce qui est utile si vous souhaitez capturer un jeu, guider quelqu'un à travers un didacticiel dans une application, démontrer un bug ou toute autre chose. Sur les anciens iPhones dotés d'une encoche en haut de l'écran, l'encoche n'est pas visible lors de l'enregistrement d'écran, comme elle devrait l'être. Mais sur les iPhones plus récents avec la découpe Dynamic Island, tels que le iPhone 14 Pro et l'iPhone 14 Pro Max, l'animation Dynamic Island affiche l'indicateur d'enregistrement rouge, ce qui rend la découpe visible dans les vidéos capturées. cela pourrait

Lors de la création d'une machine virtuelle, il vous sera demandé de sélectionner un type de disque, vous pouvez sélectionner un disque fixe ou un disque dynamique. Et si vous choisissez des disques fixes et réalisez plus tard que vous avez besoin de disques dynamiques, ou vice versa, vous pouvez convertir l'un en l'autre ? Dans cet article, nous verrons comment convertir un disque fixe VirtualBox en disque dynamique et vice versa. Un disque dynamique est un disque dur virtuel qui a initialement une petite taille et qui augmente à mesure que vous stockez des données dans la machine virtuelle. Les disques dynamiques sont très efficaces pour économiser de l'espace de stockage, car ils n'occupent que l'espace de stockage de l'hôte nécessaire. Cependant, à mesure que la capacité du disque augmente, les performances de votre ordinateur peuvent être légèrement affectées. Les disques fixes et les disques dynamiques sont couramment utilisés dans les machines virtuelles

Si vous souhaitez convertir un disque dynamique en disque de base sous Windows 11, vous devez d'abord créer une sauvegarde car le processus effacera toutes les données qu'il contient. Pourquoi devriez-vous convertir un disque dynamique en disque de base sous Windows 11 ? Selon Microsoft, les disques dynamiques sont obsolètes depuis Windows et leur utilisation n'est plus recommandée. De plus, Windows Home Edition ne prend pas en charge les disques dynamiques, vous ne pourrez donc pas accéder à ces lecteurs logiques. Si vous souhaitez combiner plus de disques dans un volume plus grand, il est recommandé d'utiliser des disques de base ou des espaces de stockage. Dans cet article, nous allons vous montrer comment convertir un disque dynamique en disque de base sous Windows 11. Comment convertir un disque dynamique en disque de base sous Windows 11 ? au début

Imaginez que vous recherchez quelque chose sur votre système mais que vous ne savez pas quelle application ouvrir ou sélectionner. C'est là que la fonctionnalité Live Tiles entre en jeu. Une vignette dynamique pour toute application prise en charge peut être ajoutée au menu Démarrer du bureau ou du système Windows, ses vignettes changeant fréquemment. Les LiveTiles donnent vie aux widgets d'application d'une manière très agréable. Pas seulement pour son apparence, mais aussi pour sa commodité. Supposons que vous utilisiez l'application WhatsApp ou Facebook sur votre système, ne serait-il pas pratique que le nombre de notifications soit affiché sur l'icône de l'application ? Ceci est possible si une telle application prise en charge est ajoutée en tant que vignette dynamique. Voyons comment le faire sous Windows

Microsoft a introduit l'accès rapide dans Windows 10 et a conservé la fonctionnalité dans le système d'exploitation Windows 11 récemment publié. L'accès rapide remplace le système de favoris dans l'explorateur de fichiers. L'une des principales différences entre les deux fonctionnalités est que Quick Access ajoute un composant dynamique à sa liste. Certains dossiers apparaissent de manière permanente, tandis que d'autres apparaissent en fonction de leur utilisation. Les dossiers fixes sont affichés avec une icône en forme d'épingle, tandis que les dossiers dynamiques n'ont pas une telle icône. Vous pouvez voir une comparaison entre Mes favoris et Accès rapide ici pour plus de détails. L'accès rapide est plus puissant que les favoris, mais les listes de dossiers dynamiques y ajoutent un élément de fouillis. Les fichiers inutiles ou qui ne doivent pas être mis en surbrillance dans l'Explorateur de fichiers peuvent être affichés

Qu’est-ce que le verrouillage dynamique sur Windows 11 ? Dynamic Lock est une fonctionnalité de Windows 11 qui verrouille votre ordinateur lorsqu'un appareil Bluetooth connecté (votre téléphone ou portable) devient hors de portée. La fonction Dynamic Lock verrouille automatiquement votre PC même si vous oubliez d'utiliser le raccourci Windows Key + L en vous éloignant. Dynamic Lock fonctionne avec n'importe quel appareil connecté via Bluetooth, mais il est préférable d'utiliser un appareil doté d'une batterie et d'une autonomie suffisantes, comme votre téléphone. Une fois que votre appareil devient inaccessible pendant 30 secondes, Windows verrouille automatiquement l'écran. Associer un appareil Bluetooth avec Windows 11 Pour que tout fonctionne correctement, vous devez d'abord

Comment utiliser HTML, CSS et jQuery pour créer un carrousel d'images dynamiques Dans la conception et le développement de sites Web, le carrousel d'images est une fonction fréquemment utilisée pour afficher plusieurs images ou bannières publicitaires. Grâce à la combinaison de HTML, CSS et jQuery, nous pouvons obtenir un effet carrousel d'images dynamique, ajoutant de la vitalité et de l'attrait au site Web. Cet article explique comment utiliser HTML, CSS et jQuery pour créer un carrousel d'images dynamique simple et fournit des exemples de code spécifiques. Étape 1 : Configurer la jonction HTML
